Oyunun çözümü ile ilgili PDF formatındaki dokümanı buradan indirebilirsiniz.

Eski çağlarda Zekado ülkesinde şöyle bir oyun oynanırmış:

  • Ortaya belli sayıda (n) bilye konur.
  • İki kişi sıra ile hamleler yapar.
  • Birinci oyuncu ilk hamlesinde ortadan 2 ya da 3 bilye alır.
  • Sırası gelen oyuncu, bir önceki oyuncunun aldığı bilye sayısı k ise, k+1≤m≤2k olacak şekilde m tane bilye alır. Son hamlede geriye kalan bilyelerin sayısı ≤k ise bu bilyelerin hepsini alabilir.
  • Son bilye grubunu alan oyunu kazanır.




Örnek bir oyun:

Ortada 25 tane bilye var:

  Aldığı Bilye Sayısı Kalan Bilye Sayısı
1. Oyuncu 2 23
2. Oyuncu 3 20
1. Oyuncu 5 15
2. Oyuncu 8 7
1. Oyuncu 7 0

Bu durumda son hamleyi yapmış olan 1. oyuncu kazanıyor.

Sizden istenen ise bu oyunu hem 1. hem de 2. oyuncu için oynayan bir program yazmanız.

VARSAYIMLAR

  • 2≤n≤100
  • Programınız standart girdiden (stdin) hamleleri alıp standart çıktıya (stdout) hamlelerini (aldığı bilye sayılarını) yazmalıdır.

GİRDİ - ÇIKTI

  • Programınız oyun başlarken standart girdiden bilye sayısını (n) ve oyuncu numarasını belirten iki adet tamsayı okuyacaktır. Oyuncu numarasının değeri, birinci oyuncu iseniz 1, ikinci oyuncu iseniz 2 olacaktır.
  • İlerleyen aşamalarda, hamle sırası karşıdaki oyuncuda ise onun yaptığı hamleyi okuyacak (1 adet tamsayı), sıra kendinde ise hamlesini yazacaktır (1 adet tamsayı).

DEÐERLENDİRME

  • Verilen ‘n’ değerleri için, herhangi bir kod diğer bütün kodlarla hem 1. hem de 2. oyuncu için oyunu oynayacaktır.
  • Herhangi bir anda yanlış bir hamle yapan oyuncu o oyunu kaybetmiş sayılacaktır.