Tampaknya tantangan bunglon adalah hal yang buruk . Sayang sekali, bunglon adalah makhluk yang cantik. Waktunya untuk perubahan!
Seperti kita ketahui, banyak bunglon memiliki kemampuan luar biasa untuk berbaur dengan lingkungannya dengan mengubah warna kulit mereka. Yang juga merupakan tujuan dari tantangan ini.
Tantangan
Bayangkan kuadrat sembilan piksel. Delapan piksel adalah sekelilingnya. Di tengah adalah bunglon.
Seperti ini:
Bunglon secara alami mencoba berbaur dengan lingkungannya. Ia melakukannya dengan mengubah warnanya menjadi rata-rata dari piksel di sekitarnya. Jadi, dalam hal ini, bunglon akan berubah warnanya menjadi .
Objektif
Mengingat warna-warna piksel di sekitarnya, mengeluarkan warna bunglon.
Warna bunglon didefinisikan sebagai total semua merah, hijau dan biru dalam piksel ÷ 8.
Memasukkan
Array nilai warna untuk delapan piksel di sekitarnya, mulai dari kiri atas dan berlanjut searah jarum jam, seperti ini:
[[<red>,<green>,<blue>],[<red>,<green>,<blue>],[<red>,<green>,<blue>],[<red>,<green>,<blue>],[<red>,<green>,<blue>],[<red>,<green>,<blue>],[<red>,<green>,<blue>],[<red>,<green>,<blue>]]
Anda dapat memilih untuk menerima input dalam bentuk yang berbeda, asalkan terdiri dari delapan kali lipat angka desimal 0-255.
Jika Anda menerima input dalam bentuk yang berbeda, angka harus memiliki panjang yang konsisten atau memiliki pemisah non-numerik di antaranya. Triples harus memiliki karakter pemisah kecuali mereka 0-padded hingga 9 digit. (Misalnya 044200255044200255044200255044200255044200255044200255044200255044200255
valid, begitu juga 44 200 255 44 200 255 44 200 255 44 200 255 44 200 255 44 200 255 44 200 255 44 200 255
dan 44?200?255$44?200?255$44?200?255$44?200?255$44?200?255$44?200?255$44?200?255$44?200?255
, tetapi 4420025544200255442002554420025544200255442002554420025544200255
tidak.)
Keluaran
Array / string / dll. Yang mengandung warna piksel tengah (dalam desimal), seperti ini:
[<red>,<green>,<blue>]
Jika Anda mengeluarkan sesuatu selain array: Angka harus memiliki panjang yang konsisten atau memiliki pemisah non-numerik di antaranya. (Misalnya 044200255
valid, demikian 44 200 255
, tetapi 44200255
tidak.)
Angka-angka mungkin tidak mengandung titik desimal, jadi misalkan 44.0 200 255.0
tidak valid.
Pembulatan
Output harus dibulatkan ke integer terdekat. (Bagian harus dibulatkan.) Misalnya, jika jumlah semua merah adalah 1620 , Anda harus mengeluarkan 203
, bukan 202
atau 202.5
.
Contohnya
Gambar hanya untuk ilustrasi. Pixel tengah adalah output, piksel sekitarnya adalah input.
Memasukkan:
[[200,200,200],[200,200,200],[200,200,200],[200,200,200],[200,200,200],[200,200,200],[200,200,200],[200,200,200]]
Keluaran:
[200,200,200]
Memasukkan:
[[0,0,0],[255,255,255],[0,0,0],[255,255,255],[255,255,255],[0,0,0],[255,255,255],[0,0,0]]
Keluaran:
[128,128,128]
Memasukkan:
[[0,200,200],[200,0,200],[200,200,0],[60,200,0],[200,0,200],[0,200,220],[2,200,0],[0,0,0]]
Keluaran:
[83,125,103]
Memasukkan:
[[0,56,58],[65,0,200],[33,200,0],[60,33,0],[98,0,200],[0,28,220],[2,200,0],[99,0,5]]
Keluaran:
[45,65,85]
Pengajuan dapat berupa program lengkap atau suatu fungsi. Standar I / O dan aturan celah berlaku.