Fișierul intrare/ieșire | pyk.in, pyk.out | Sursă | ONI 2018 clasa a 5-a |
---|---|---|---|
Autor | Carmen Mincă | Adăugată de |
|
Timp de execuție pe test | 0.3 sec | Limită de memorie | 8192 KB |
Scorul tău | N/A | Dificultate |
Vezi soluțiile trimise | Statistici
Pyk (clasa a 5-a)
Notă: enunțul problemei a fost modificat pentru a corespunde realității testelor. Punctajele au fost modificate pentru cele două cerințe.
Fie k, n și y trei numere naturale.
Fie X un șir format din n numere naturale: x1, x2, x3, ..., xn.
Fie P produsul numerelor y, x1, x2, x3, ..., xn , adică: P = y * x1 * x2 * x3 * ... * xn.
Numărul P este o “k-putere” dacă există un număr natural z astfel încât P = zk.
Cerințe
Scrieți un program care să citească numerele k, n, x1, x2, x3, ..., xn și care să determine:
- cel mai mic număr și cel mai mare număr din șirul X, formate doar din cifre identice;
- descompunerea în factori primi a celui mai mic număr natural y (y ≥ 2) cu proprietatea că numărul P = y * x1 * x2 * x3 * ... * xn este o “k-putere”.
Date de intrare
Fișierul de intrare pyk.in conține:
- pe prima linie, un număr natural C reprezentând cerința din problemă care trebuie rezolvată (1 sau 2);
- pe a doua linie, numerele naturale k și n, separate printr-un singur spațiu;
- pe a treia linie, cele n numere naturale x1, x2, x3, ..., xn, separate prin câte un singur spațiu.
Date de ieșire
Dacă C = 1, atunci prima linie a fișierului de ieșire pyk.out conține două numere naturale, separate printr-un singur spațiu, reprezentând răspunsul la cerința 1 a problemei. Dacă nu există astfel de numere, prima linie a fișierului va conține valoarea 1.
Dacă C = 2, atunci fișierul de ieșire pyk.out conține:
- pe prima linie, un număr natural m reprezentând numărul de factori primi distincți din descompunerea în factori primi a numărului y, determinat la rezolvarea cerinței 2;
- pe fiecare dintre următoarele m linii (câte o linie pentru fiecare factor prim din descompunerea în factori primi a lui y), câte două valori F și E, separate printr-un singur spațiu, reprezentând factorul prim F și exponentul E al acestui factor din descompunerea în factori primi a lui y.
Scrierea în fișier a acestor factori primi se va face în ordinea crescătoare a valorii lor.
Restricții
- 2 ≤ n ≤ 50 000
- 2 ≤ k ≤ 100
- 2 ≤ x1, x2, x3, ..., xn ≤ 10 000
- 2 ≤ y
- pentru rezolvarea corectă a cerinței 1 se acordă
1015 puncte - pentru rezolvarea corectă a cerinței 2 se acordă
9085 de puncte.
Exemplu
pyk.in | pyk.out | Explicație |
---|---|---|
1 2 7 122 1111 5 4 88 123 999 |
4 1111 |
Cerința este 1, k = 2, n = 7. Numerele din șirul X formate doar din cifre identice sunt: 1111, 5, 4, 88, 999. Cel mai mic număr dintre acestea este 4, iar cel mai mare este 1111. |
2 3 6 12 5 60 125 4 36 |
3 2 1 3 2 5 1 |
Cerința este 2, k = 3, n = 6. Produsul celor 6 numere din șir este: 12 * 5 * 60 * 125 * 4 * 36 = 64800000 y = 90 este cea mai mică valoare pentru care P = 90 * 64800000 = 18003 devine o “k-putere”. Descompunerea în factori primi a lui y conține m = 3 factori primi: 21 * 32 * 51 |