#4450
Un număr natural se numește extrapar dacă poate fi scris ca sumă de puteri distincte ale lui 2
, puteri care au exponent par. Numărul 0
este considerat, de asemenea, extrapar. Considerând reprezentarea în baza 2 pentru un număr natural, se numerotează pozițiile cifrelor din reprezentare, de la dreapta către stânga, începând cu 0
. Asupra reprezentării în baza 2 trebuie să se efectueze o singură operație. Operația constă din eliminarea a exact K
cifre situate pe poziții consecutive. Fiind date reprezentările în baza 2 pentru N
numere naturale, să se determine pentru fiecare dintre ele dacă se poate obține un număr extrapar în condițiile de mai sus.
ONI 2023 baraj juniori
Problema | extrapare | Operații I/O |
![]() extrapare.in /extrapare.out
|
---|---|---|---|
Limita timp | 0.3 secunde | Limita memorie |
Total: 128 MB
/
Stivă 64 MB
|
Id soluție | #57796154 | Utilizator | |
Fișier | extrapare.cpp | Dimensiune | 1.64 KB |
Data încărcării | 16 Aprilie 2025, 20:56 | Scor / rezultat | Eroare de compilare |
extrapare.cpp: In function 'int main()': extrapare.cpp:11:9: error: 'i' was not declared in this scope for(i=1;i<=n;i++) ^ extrapare.cpp:18:13: error: 'j' was not declared in this scope for(j=strlen(r)-1;j>=0;j--) ^ extrapare.cpp:18:23: error: invalid conversion from 'int' to 'const char*' [-fpermissive] for(j=strlen(r)-1;j>=0;j--) ^ In file included from /usr/include/c++/4.8/cstring:42:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:48, from extrapare.cpp:1: /usr/include/string.h:399:15: error: initializing argument 1 of 'size_t strlen(const char*)' [-fpermissive] extern size_t strlen (const char *__s) ^ extrapare.cpp:33:13: error: 'j' was not declared in this scope for(j=0;j<=strlen(r)-1;j++) ^ extrapare.cpp:33:28: error: invalid conversion from 'int' to 'const char*' [-fpermissive] for(j=0;j<=strlen(r)-1;j++) ^ In file included from /usr/include/c++/4.8/cstring:42:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:48, from extrapare.cpp:1: /usr/include/string.h:399:15: error: initializing argument 1 of 'size_t strlen(const char*)' [-fpermissive] extern size_t strlen (const char *__s) ^ extrapare.cpp:62:44: error: invalid conversion from 'int' to 'const char*' [-fpermissive] for(t=0;t<=strlen(r)-1;t++) ^ In file included from /usr/include/c++/4.8/cstring:42:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:48, from extrapare.cpp:1: /usr/include/string.h:399:15: error: initializing argument 1 of 'size_t strlen(const char*)' [-fpermissive] extern size_t strlen (const char *__s) ^ extrapare.cpp:62:46: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(t=0;t<=strlen(r)-1;t++) ^ extrapare.cpp:64:42: error: expected primary-expression before ')' token if(ok2==1 && ) ^ extrapare.cpp:65:25: error: expected primary-expression before '}' token } ^ extrapare.cpp:65:25: error: expected ';' before '}' token
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema extrapare 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ă.