正の整数のリストを受け取り、同じ位置にある対応する整数の合計のパーセントに近い整数のリストを返す関数を作成します。
返されるリスト内のすべての整数は、正確に100まで加算する必要があります。渡された整数の合計は0より大きいと仮定できます。どちらの方向でも1を超えてオフになりません。
p([1,0,2]) -> [33,0,67] or [34,0,66]
p([1000,1000]) -> [50,50]
p([1,1,2,4]) -> [12,12,25,51] or [13,12,25,50] or [12,13,25,50] or [12,12,26,50]
p([0,0,0,5,0]) -> [0,0,0,100,0]
これはcode-golfなので、バイト単位の最短コードが勝ちです!
p([2,2,2,2,2,3])
。それには多くの有効な答えがありますが、すべて2
のを同じ値にマッピングできるわけではありません。これにより、丸めがそれほど悪くないため、以前のすべてのテストケースで機能する非常に単純なアルゴリズムが多くなくなります。
p([1000,1000]) -> [49,51]
か?