用 Python 將數字分割槽為最少數量的十進位制二進位制數的程式


假設我們有一個字串格式的數字 n。我們必須找到所需的最小十進位制二進位制數,使得它們的和等於 n。十進位制二進位制數是一個十進位制數,其數字要麼是 0,要麼是 1。

因此,如果輸入類似於 n = "132",那麼輸出將是 3,因為 132 是三個十進位制二進位制數的和(10 + 11 + 111)。

為了解決這個問題,我們將遵循以下步驟 -

  • 結果:= 1
  • 對於 n 中的每個 i,執行
    • 如果 i 不在 {0, 1} 中,則
      • 結果:= 結果和 i 中的最大值
  • 返回結果

例項

讓我們看看以下實現以獲得更好的理解 -

def solve(n):
   result = 1
   for i in n:
      if i not in {0,1}:
         result = max(result, int(i))
   return result

n = "132"
print(solve(n))

輸入

132

輸出

3

更新於:06-10-2021

460 次瀏覽

開啟你的 職業

完成課程獲取資格認證

開始
廣告
© . All rights reserved.