== include(page="template/taskheader" task_id="divizor") ==
Poveste și cerință...
Se consideră un număr natural $N$ format din $m$ cifre și toate cele $m-1$ numere ce se pot forma succesiv pornind de la numărul inițial [$N$], prin mutarea celei mai semnificative cifre a combinației curente la sfârșitul acesteia , după cum se poate observa din exemplele de mai jos.
$Ex.1) N=12035 N=12035 Ex. 2) N=2121
m=5 m=5 m=4
20351 20351 1212
03512 3512 2121
35120 35120 1212
51203 51203
(4 combinații) (4 numere) (3 combinații, 3 numere)$
h2. Cerință
Scrieți un program care să citească numărul [$N$], să construiască cele $m-1$ numere și să determine:
a) numărul cu cel mai mare număr de divizori, dintre cele $m$ numere; dacă sunt mai multe astfel de numere printre cele [$m$], se vor scrie în fișierul de ieșire toate aceste numere.
b) cel mai mare număr care este divizor propriu pentru cel puțin unul din cele $m$ numere, iar în cazul în care nu există un astfel de divizor (toate cele $m$ numere sunt prime), se va afișa valoarea [$0$].
h2. Date de intrare
Fișierul de intrare $divizor.in$ ...
Fișierul $divizor.in$ conține o singură linie pe care este scris numărul natural [$N$].
h2. Date de ieșire
În fișierul de ieșire $divizor.out$ ...
Fișierul $divizor.out$ va conține:
* pe prima linie numărul sau numerele cu număr maxim de divizori, despărțite prin câte un spațiu
* pe a doua linie, un număr natural reprezentând cel mai mare număr care este divizor propriu pentru cel puțin unul din cele $m$ numere sau [$0$], în cazul în care toate cele $m$ numere sunt numere prime
h2. Restricții
* $... ≤ ... ≤ ...$
* $N$ este un număr natural nenul, format din cel mult $6$ cifre
* Conform procedurii de formare a combinațiilor, se poate întâmpla să se obțină de mai multe ori același număr. Se vor considera toate combinațiile posibile, chiar dacă există numere care se repetă.
* Cifra $0$ scrisă în fața unui număr se consideră neglijabilă și nu se cere afișată în rezultatul final.
* La toate cerințele se ia în considerare și numărul inițial.
* Divizorul propriu al unui număr este un divizor diferit de $1$ și de număr.
* Se acordă punctaje parțiale: cerința a) 60% din punctaj, cerința b) 40% din punctaj
h2. Exemplu
table(example).
|_. divizor.in |_. divizor.out |
| This is some
text written on
multiple lines.
| This is another
text written on
multiple lines.
| 212
| 212
106
|
h3. Explicație
...
Numerele obținute: $212$ (inițial), [$122$], [$221$]. $212$ are $6$ divizori, $122$ și $221$ au câte $4$ divizori. Deci numărul cu cel mai mare număr de divizori este [$212$]. Cel mai mare divizor propriu este $106$ (divizorul numărului [$212$]) .
== include(page="template/taskfooter" task_id="divizor") ==
== include(page="template/taskfooter" task_id="divizor") ==