Bu, 1 ve 2 numaralı iki kişinin ofis için çalıştığı bir zorluktur. İnsanlar, seçimden önce adayların sonuçlarını anlamalarını sağlayabilen, 1 ve 2 dünyasında belli belirleyici şekilde oy kullanıyorlar.
NOT: Bu, herhangi bir dış seçime veya diğer siyasi olaylara atıfta bulunma amaçlı değildir.
İki kişi ofis için çalışıyor. Bu insanları 1 ve 2 olarak adlandıracağız. Her ikisi de seçimleri kazanıp kazanmayacaklarını bilmek istediklerinden, sonucun ne olacağını bulmak için insanlar hakkındaki bilgilerini ve bazı kuralları kullanmaya karar veriyorlar. Devlet harcamalarını minimize etmek istemediğinden, kodun mümkün olduğu kadar kısa olması gerekiyor.
Senin görevin: Nasıl oy kullandıklarına bağlı olarak bir dizi insan göz önüne alındığında, seçimleri kazanan kişi çıktısını aldı.
1 ve 2'nin eğlenceli ve heyecan verici dünyasında beş çeşit insan var:
A
: kesinlikle 1 oy verecek olan insanlar.B
: kesinlikle 2'ye oy verecek insanlar.X
: solundaki kişi için oy verecek olan, oy verecek olan kişi. Solunda kimse yoksa, o zaman sağındaki kişinin oy vereceği kişiye oy verir. Haklarındaki kişinin kime oy kullandığı açık değilse, o zaman oy kullanmazlar.Y
: insanlar sola karşı tarafını oylayacak. Solunda kimse yoksa, o zaman sağında bulunanın karşısında oy kullanırlar. Haklarındaki kişinin kime oy kullandığı açık değilse, o zaman oy kullanmazlar.N
: oy kullanmayan kişiler.
Bu soldan sağa değerlendirilir.
Örnek:
“Değerlendirilen” kişi netlik için küçük harflerle yazılmıştır.
Input: `XXAYAN`
xX Votes for whoever their friend is voting for. Their friend has not decided yet, so it is unclear, so they do not vote.
Xx Person to left is voting "none" so votes "none."
a Votes for 1
Ay Since person on left is voting for 1, votes for 2.
a Votes for 1
n Does not vote
Son anket:
1 kişi için 1 kişi oy kullandı
2 kişi için 1 kişi oy kullandı
3 kişi oy kullanmadı
1 en çok oy alan, 1 kazanır!
Test durumları:
Farklı olduğu sürece, diğer karakterleri veya değerleri giriş ve çıkış olarak kullanabilirsiniz. (Örneğin: harfler yerine sayılar, farklı harfler, küçük harfler, gerçek / yanlış veya pozitif / negatif (çıktı için), vb.)
Input -> Output
"AAAA" -> 1
"BBBB" -> 2
"BBAXY" -> 2
"BAXYBNXBAYXBN" -> 2
"XXAYAN" -> 1
"AAAABXXXX" -> 2
"AXNXXXXAYB" -> 1
"NANNY" -> 1
"XA" -> 1
"YAB" -> 2
"XY" -> anything (do not need to handle test cases with no victor)
"AB" -> anything (do not need to handle test cases with no victor)
none
ise bunun tersi olduğunu belirtmekte fayda var .none
NY
XA
, XB
, YA
ve YB
.