Couch 2048というゲームを試しました。
(注:この質問をよりよく理解するために一見する必要があります。)
それは私にとってあまりエキサイティングではなかったので、私は自分自身に「2048年まであとどれくらい!?」
それは私が思ったほど簡単ではないのでこれを計算するので、私は挑戦を投稿するように促しました。
あなたの目標:
ソファにあるボールのリストが与えられたら、ゲームに勝つために(2048ボールに到達するために)値が2のボールを空から降ろさなければならない数を出力する必要があります。
- 入力が有効であると仮定します。
- プレーヤーがボールを落とさないと仮定します。
- 私が言ったように、空から落ちるボールの値は常に2であると仮定します。
- 有効な出力例:3、 "4"、[5]、["6"]
編集:
私は何かを明確にする必要があります:
- 必要な2の最小量を印刷する必要があります。
テストケース:
[2048] -> 0あなたはすでに獲得した
[1024,1024] -> 0あなたが勝つために任意のより多くのボールを必要としない
[1024,512,256,128,64,32,16,8,4,2] -> 11つのボールをするために必要な「チェーンを活性化させます」
[512] -> 768
[512,2] -> 767
[4,16,64] -> 982
注:
私はネイティブスピーカーではありません-誤字や文法的でないテキストを見つけた場合は教えてください。
不明な点がある場合は、コメントでお尋ねください。
2048、除算します2-もしそうであれば、最後のテストケースをダブルチェックしたいかもしれません-そうでなければ、出力がなぜないのかを説明する例として使用してください「T 982。
[4,16,64] -> 22?