Dalam permainan Stratego, mekanik permainan utama adalah ketika Anda menyerang bagian lawan dengan milik Anda. Dalam tantangan ini, tugas Anda adalah mensimulasikan salah satu pertempuran ini dan mengatakan siapa yang selamat.
Spesifikasi
Anda akan mendapatkan sepasang string yang mewakili potongan Stratego. Potongan adalah salah satunya "S 1 2 3 4 5 6 7 8 9 10 B"
( S
adalah Spy, dan B
adalah bom). Yang pertama dari pasangan akan menjadi penyerang, dan yang kedua diserang.
Berikut adalah aturan untuk menentukan hasil pertempuran:
- Jumlah yang lebih tinggi mengalahkan angka yang lebih rendah:
["4", "6"] -> ["6"]
. - Jika keduanya sama, maka kedua die:
["7", "7"] -> []
. - Spies berada di bagian bawah, bawah bahkan
1
:["S", "2"] -> ["2"]
. - Namun, jika mata-mata menyerang
10
, maka mata-mata menang:["S", "10"] -> ["S"]
. - Tapi aturan normal masih berlaku jika
10
adalah satu menyerang:["10", "S"] -> ["10"]
. - Jika sesuatu menyerang bom, bom menang:
["5", "B"] -> ["B"]
. - Namun, penambang (a
3
), dapat meredakan bom:["3", "B"] -> ["3"]
. - Sebuah bom tidak akan pernah menjadi penyerangnya.
- Seorang pengintai (a
1
), dapat menyerang menggunakan mekanisme normal, tetapi mereka juga dapat mencoba untuk "menebak" peringkat pemain lain, yang dapat dilambangkan dengan notasi waras. - Jika mereka menebak dengan benar, bagian lainnya meninggal:
["1(5)", "5"] -> ["1"]
. - Jika mereka salah menebak, tidak ada yang terjadi:
["1(3)", "5"] -> ["1", "5"]
. - Pengadu bisa melihat bom:
["1(B)", "B"] -> ["1"]
.
Ini adalah kode-golf , jadi kode terpendek dalam byte menang!
(Anda dapat menggunakan contoh di atas sebagai kasus uji, karena saya terlalu malas untuk menggabungkan semuanya dalam satu daftar).
"Victory!"
untuk mereka, tetapi tidak ingin terlalu
2
s, dan tidak ada 1
dalam game Stratego saya ... (atau apakah mereka hanya dimodifikasi untuk tujuan tantangan?)