Tulis fungsi yang mengambil daftar bilangan bulat positif dan mengembalikan daftar bilangan bulat yang mendekati persentase total untuk bilangan bulat yang sesuai di posisi yang sama.
Semua bilangan bulat dalam daftar kembali harus benar-benar menambahkan hingga 100. Anda dapat mengasumsikan jumlah bilangan bulat yang dilewatkan lebih besar dari 0. Bagaimana Anda ingin membulatkan atau memotong desimal terserah Anda selama setiap bilangan bulat tunggal yang dihasilkan dikembalikan sebagai persentase dimatikan oleh tidak lebih dari 1 di kedua arah.
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]
Ini adalah kode-golf , jadi kode terpendek dalam byte menang!
p([2,2,2,2,2,3])
. Ini memiliki banyak kemungkinan jawaban hukum, tetapi tidak semua 2
dapat dipetakan dengan nilai yang sama. Ini menghilangkan banyak algoritma yang terlalu sederhana yang bekerja pada semua kasus pengujian sebelumnya karena pembulatan tidak terlalu buruk.
p([1000,1000]) -> [49,51]
?