Diferente pentru problema/spirala2 intre reviziile #1 si #4

Diferente intre titluri:

spirala2
Spirala2

Diferente intre continut:

== include(page="template/taskheader" task_id="spirala2") ==
Poveste şi cerinţă...
Se consideră un automat de criptare format dintr-un tablou cu $n$ linii şi $n$ coloane, tablou ce conţine toate numerele de la $1$ la $n^2^$ aşezate ”şerpuit” pe linii, de la prima la ultima linie, pe liniile impare pornind de la stânga către dreapta, iar pe cele pare de la dreapta către stânga (ca în prima figură). Numim ”amestecare“ operaţia de desfăşurare în spirală a valorilor din tablou în ordinea indicată de săgeţi şi de reaşezare a acestora în acelaşi tablou, ”şerpuit” pe linii ca şi în cazul precedent.
 
De exemplu, desfăşurarea tabloului din prima figură conduce la şirul: $1 2 3 4 5 12 13 14 15 16 9 8 7 6 11 10$, iar reaşezarea acestuia în tablou conduce la obţinerea unui nou tablou reprezentat în cea de-a doua figură.
 
!problema/spirala2?Screenshot.png!
 
După orice operaţie de amestecare se poate relua procedeul, efectuând o nouă amestecare. S-a observat un fapt interesant: că după un număr de amestecări, unele valori ajung din nou în poziţia iniţială (pe care o aveau în tabloul de pornire). De exemplu, după două amestecări, tabloul de $4x4$ conţine $9$ dintre elementele sale în exact aceeaşi poziţie în care se aflau iniţial (vezi elemente marcate din figura $3$).
 
h2. Cerinţă
 
Pentru $n$ şi $k$ citite, scrieţi un program care să determine numărul minim de amestecări ale unui tablou de $n$ linii necesar pentru a ajunge la un tablou cu exact $k$ elemente aflate din nou în poziţia iniţială.
h2. Date de intrare
Fişierul de intrare $spirala2.in$ ...
Fişierul de intrare $spirala2.in$ conţine pe prima linie cele două numere $n$ şi $k$ despărţite printr-un spaţiu.
h2. Date de ieşire
În fişierul de ieşire $spirala2.out$ ...
În fişierul de ieşire $spirala2.out$ veţi afişa numărul de amestecări determinat.
h2. Restricţii
* $... ≤ ... ≤ ...$
 
h2. Exemplu
 
table(example). |_. spirala2.in |_. spirala2.out |
| This is some
  text written on
  multiple lines.
| This is another
  text written on
  multiple lines.
|
* $3 ≤ N ≤ 50$
* Datele de intrare sunt alese astfel încât numărul minim de amestecări necesare să încapă pe $32$ de biţi cu semn.
h3. Explicaţie
h2. Exemple
...
table(example). |_. spirala2.in |_. spirala2.out |_. spirala2.in |_. spirala2.out |
| 4 9
| 2
| 6 36
| 330
|
== include(page="template/taskfooter" task_id="spirala2") ==

Nu exista diferente intre securitate.

Diferente intre topic forum:

 
4695