Fișierul intrare/ieșire | divizor.in, divizor.out | Sursă | OJI 2009, clasa a 5-a |
---|---|---|---|
Autor | Cristina Iordaiche | Adăugată de | Cristian Frâncu • francu |
Timp de execuție pe test | 1 sec | Limită de memorie | 2048 KB |
Scorul tău | N/A | Dificultate | N/A |
Vezi soluțiile trimise | Statistici
Divizor (clasa a 5-a)
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)
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.
Date de intrare
Fișierul divizor.in conține o singură linie pe care este scris numărul natural N.
Date de ieșire
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
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
Exemplu
divizor.in | divizor.out |
---|---|
212 |
212 106 |
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) .