#2148
Pe Marte s-au descoperit N marțieni, identificați de către oamenii de știință de pe Pământ prin numerele de la 1 la N. Cercetările au dovedit că ADN-ul oricărui marțian X este format din mulțimea factorilor primi din descompunerea lui X.
Se știe că marțianul cu numărul de ordine Y îl moștenește pe marțianul cu numărul de ordine X dacă ADN(X) este inclus în ADN(Y), adică mulțimea factorilor primi ai lui X este inclusă în mulțimea factorilor primi ai lui Y.
Trebuie să specificăm că se pot întâlni situații extreme în care X îl moștenește pe Y dar și Y îl moștenește pe X, atunci când cei doi marțieni au ADN-urile egale.
Realizați un program care, considerând mulțimea celor N marțieni, determină numărul de perechi de marțieni (Y, X) pentru care Y îl moștenește pe X, unde 1 ≤ X ≤ N și 1 ≤ Y ≤ N.
ONIGIM 2017, Baraj juniori
| Problema | ADN | Operații I/O |
adn.in/adn.out
|
|---|---|---|---|
| Limita timp | 0.5 secunde | Limita memorie |
Total: 32 MB
/
Stivă 32 MB
|
| Id soluție | #64400905 | Utilizator | |
| Fișier | adn.cpp | Dimensiune | 500 B |
| Data încărcării | 05 Mai 2026, 11:19 | Scor/rezultat | Eroare de compilare |
adn.cpp: In function ‘int main()’: adn.cpp:21:20: error: ‘n’ was not declared in this scope 21 | for(int i=0; i<n; i++){ | ^ adn.cpp:27:9: warning: unused variable ‘cnt’ [-Wunused-variable] 27 | int cnt=n; | ^~~
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema ADN face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:
Suma punctajelor acordate pe testele utilizate pentru verificare este 100. Astfel, soluția ta poate obține cel mult 100 de puncte, caz în care se poate considera corectă.