Stratego oyununda, ana oyun tamircisi rakibinizin parçasına sizinkine saldırdığınız zamandır. Bu meydan okumada, işiniz bu savaşlardan birini simüle etmek ve kimin hayatta kaldığını söylemek.
gözlük
Giriş olarak Stratego parçalarını temsil eden bir çift dize alırsınız. Parçalar "S 1 2 3 4 5 6 7 8 9 10 B"
( S
Casus ve B
bomba) biridir. Çiftin birincisi saldırgan, ikincisi ise saldırgan olacaktır.
Bir savaşın sonuçlarını belirlemek için kurallar şunlardır:
- Yüksek sayı daha az sayıda yener:
["4", "6"] -> ["6"]
. - Her ikisi de aynı, daha sonra her iki kalıp ise:
["7", "7"] -> []
. - Casuslar altında bile, alt kısmındadır
1
:["S", "2"] -> ["2"]
. - Bir casus saldırırsa Ancak
10
, daha sonra casus kazanır:["S", "10"] -> ["S"]
. - Ama eğer, normal kuralları hala geçerli
10
saldıran biridir:["10", "S"] -> ["10"]
. - Şey bir bomba saldırırsa, bomba kazanır:
["5", "B"] -> ["B"]
. - Ancak, madenci (a
3
), bir bombayı etkisiz hale edebilirsiniz:["3", "B"] -> ["3"]
. - Bir bomba asla saldırgan olmayacak.
- Bir gözlemci (a
1
) normal mekanizmayı kullanarak saldırabilir, ancak aynı zamanda diğer oyuncuların sırasını "tahmin etmeye" çalışabilir. - Onlar doğru tahmin ederse, diğer parça ölür:
["1(5)", "5"] -> ["1"]
. - Onlar yanlış tahmin ederse, hiçbir şey olmaz:
["1(3)", "5"] -> ["1", "5"]
. - Spotters bombaları tespit edebilirsiniz:
["1(B)", "B"] -> ["1"]
.
Bu kod golf , bayt en kısa kod kazanır!
(Buradaki örnekleri test senaryoları olarak kullanabilirsiniz, çünkü hepsini tek bir listede bir araya getirmek için çok tembelim).
"Victory!"
, ama işleri çok fazla karmaşıklaştırmak istemedim
2
ler ve hiçbir vardı 1
ler ... benim Stratego oyunda (ya da sadece meydan amacıyla değiştiriliyor?)