Atenţie! Aceasta este o versiune veche a paginii, scrisă la 2023-03-24 11:15:26.
Revizia anterioară   Revizia următoare  

 

Fişierul intrare/ieşire:monede3.in, monede3.outSursăad-hoc
AutorCiprian OprisaAdăugată decypryCiprian Oprisa cypry
Timp execuţie pe test0.5 secLimită de memorie131072 kbytes
Scorul tăuN/ADificultateN/A

Vezi solutiile trimise | Statistici

Inversarea interactivă a monedelor

Gigel a ieşit cu bine din supermarket dar a uitat să scaneze la ieşire o ciocolată. Paznicul îl observă, dar îl va lăsa să plece dacă trece de provocarea de mai jos.

Gigel va fi legat la ochi, iar paznicul pune 4 monede pe colţurile unui pătrat din carton, fiecare având o poziţie aleatoare (cap - 0 sau pajură - 1). Scopul lui Gigel este ca toate cele patru monede să ajungă cu aceeaşi faţă în sus (toate cap sau toate pajură). Provocarea are cel mult 9 runde, în fiecare rundă se efectuează paşii de mai jos, în această ordine:

  • paznicul roteşte pătratul de carton (împreună cu monedele de pe colţuri) cu un unghi ales aleator dintre 0°, 90°, 180° şi 270°
  • Gigel îi cere paznicului să inverseze între una şi patru monede, specificând colţurile mesei corespunzătoare monedelor pe care doreşte să le inverseze (notate cu A, B, C şi D)
  • paznicul îi spune lui Gigel dacă după inversarea monedelor, scopul a fost atins (toate monedele au aceeaşi faţă); daca da, provocarea se termină şi Gigel a câştigat; dacă nu, se trece la runda următoare

Dacă la finalul a 9 runde Gigel încă nu a câştigat, provocarea se termină, iar Gigel pierde.

În partea stângă a figurii de mai jos este reprezentată masa paznicului la începutul unei runde. Paznicul decide aleator să rotească pătratul de carton cu 90°, rezultatul fiind reprezentat în partea dreaptă a figurii. Observaţi că doar monedele îşi schimbă poziţia (moneda cu faţa 1 mutându-se de pe poziţia B pe poziţia C), în timp ce colţurile mesei rămân fixe.

Date de intrare

Fişierul de intrare monede3.in ...

Date de ieşire

În fişierul de ieşire monede3.out ...

Restricţii

  • ... ≤ ... ≤ ...

Exemplu

monede3.inmonede3.out
This is some
text written on
multiple lines.
This is another
text written on
multiple lines.

Explicaţie

...

Trebuie sa te autentifici pentru a trimite solutii. Click aici

Cum se trimit solutii?