Človek ne jezi se

Osnovne informacije

Omejitve
  • Čas: 2 s
  • Spomin: 128 MB
Vsebovana v: Avtor:
  • Tomaž Hočevar
  • UPM 2012

Pošlji rešitev



Tvoji rezultati.
Nisi poslal še nobene rešitve.
Več »

Verjetno poznaš popularno družabno igro Človek ne jezi se. V skladu z imenom igre, bi tudi reševalce naloge prosili, naj se med reševanje le-te ne jezijo (preveč). Tvoja naloga bo simulirati igro v skladu s predpisanimi pravili in strategijami igralcev. Ker se lahko pravila razlikujejo od tistih, ki si jih navajen, jih pozorno preberi.

Igra je namenjena 4 igralcem, ki so označeni s črkami A, B, C in D. Igralna plošča je sestavljena iz 40 polj, ki so ciklično povezana in oštevilčena v smeri urinega kazalca. Vsak igralec ima še 4 izhodiščna in 4 končna polja - vsakdo namreč igra s 4 figurami. Poleg tega bomo 1. od 40–ih polj imenovali začetno polje igralca A. 11., 21., in 31. polje so začetna polja igralcev B, C in D. Dve polji pred zaključkom cikla se odcepijo 4 zaporedno povezana končna polja, ki pripadajo igralcu.

Ker se izhodiščna polja istega igralca ne razlikujejo med seboj, jih bomo označevali kar s črko igralca. Polja na krožni poti so označena s števili od 1 do 40. Končna polja pa s črko igralca in številom od 1 do 4, kot si sledijo stran od ciklične poti (proti središču igralne deske).

Igralna plošča

Igra poteka tako, da so igralci na vrsti izmenično. Začne igralec A, nato so na vrsti B, C, D, potem zopet A itd. Če ima igralec vse svoje figure na končnih poljih, v igri ne sodeluje več. Ko je igralec na potezi, vrže kocko. Recimo, da pade P pik. Igralec izbere svojo najmanj oddaljeno figuro, ki jo je mogoče premakniti za P mest, in to tudi stori. Vsi premiki se lahko izvajajo le v smeri urinega kazalca. Tik preden figura zaključi krog, mora zaviti na končna polja. Definiramo, da so figure na izhodiščnih poljih najmanj oddaljene od vseh. Oddaljenost vseh ostalih figur definiramo kot število premikov za 1, ki so potrebni, da figuro z igralčevega začetnega polja premaknemo na trenutno polje. Po opravljenem premiku ali če noben tak premik ni mogoč, je na vrsti naslednji igralec.

Igralec lahko pri premiku figure preskoči več drugih figur. Preskakovanje je možno na vseh poljih, torej tudi na končnih. Če pa premakne figuro na polje, kjer se v tem trenutku nahaja figura katerega drugega igralca, jo zbije. To pomeni, da mora drugi igralec figuro umakniti nazaj na eno od svojih izhodiščnih polj. Igralec nikoli ne zbije katere druge lastne figure, zato to upoštevamo kot nemogoč premik.

Vsakič, ko igralec vrže 6 pik, ima možnost dodatnega meta. Dodatni met mu pripada, ne glede na to, ali je lahko izvedel premik za 6 mest. Če zopet vrže 6 pik, ima možnost še enega meta itd. Posebnost so tudi začetni premiki z izhodiščnih polj na začetno polje, za katere je potrebno dobiti 6 pik.

Če lahko igralec, ne glede na število pik, ki jih bo dosegel z metom, premakne le katero od figur z izhodiščnih mest na začetno mesto, ima na voljo največ 3 zaporedne mete, da mu to uspe. Torej, da vrže 6 pik. Ti trije meti se ne upoštevajo kot dodatni meti, če igralcu uspe prej. Seveda pa si s 6 pikami pridobi dodaten met.

Vhodni podatki

Vhodni podatki vsebujejo s presledki ločen seznam števil, ki predstavljajo vrednosti metov kocke, kot so jo metali igralci. Zagotovljeno je, da ne bodo vsi igralci zaključili z igro pred koncem zaporedja metov.

Omejitve vhodnih podatkov

  • Število metov ne bo preseglo 1000.
  • Vse vrednosti metov bodo med vključno 1 in 6.

Izhodni podatki

Izpiši stanje na igralni plošči po opravljenih metih. V k-ti vrstici naj bodo s presledki ločena mesta figur k-tega igralca. Za vsakega igralca najprej izpiši figure, ki se nahajajo na čakalnih mestih, nato pa naj si sledijo glede na oddaljenost oz. število potez, ki bi bile potrebne, da figuro z začetnega mesta s premiki po 1 pripeljemo na njeno trenutno mesto.

Stanje na zgornji sliki (igralec A je rdeč, B zelen, C moder in D rumen) bi v skladu s pravili opisali na sledeč način:

A A 25 A3 
B 28 38 8 
C C 18 C2 
D 5 13 D3

Primer

Vhod

1 5 2 6 3 6 6 4 3 6 6 6 6

Izhod

A A A A
B B B 14
C C C C
D D 31 3
Tip: Log in to
  • submit and test your solution
  • post or read questions and answers about this task