#4838
antidivizor
Lui Fibo îi plac numerele care nu se potrivesc perfect. Recent, acesta a descoperit niște numere mai speciale: el numește un număr x
ca fiind antidivizorul unui număr natural nenul k
, dacă x
este cel mai mic număr natural nenul care nu-l divide pe k
. Fie F(k) = x
, unde x
este antidivizorul lui k
. Să se calculeze F(1) + F(2) + ... + F(N)
pentru T
valori ale lui N
.
ONI 2025, clasa a 9-a
Problema | antidivizor | Operații I/O |
![]() antidivizor.in /antidivizor.out
|
---|---|---|---|
Limita timp | 0.2 secunde | Limita memorie |
Total: 512 MB
/
Stivă 128 MB
|
Id soluție | #58597510 | Utilizator | |
Fișier | antidivizor.cpp | Dimensiune | 867 B |
Data încărcării | 27 Iunie 2025, 13:59 | Scor / rezultat | Eroare de compilare |
antidivizor.cpp:7:13: error: variable 'std::ifstream fin' has initializer but incomplete type ifstream fin("antidivizor.in"); ^ antidivizor.cpp:8:14: error: variable 'std::ofstream fout' has initializer but incomplete type ofstream fout("antidivizor.out"); ^ antidivizor.cpp: In function 'int main()': antidivizor.cpp:21:34: error: 'lcm' is not a member of 'std' long long next_lcm = std::lcm(lcm, x); ^ antidivizor.cpp:32:35: error: 'log2' is not a member of 'std' ans += cnt * (long long)((std::log2(N) + 10)); // worst-case guess ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema antidivizor 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ă.