#3720
Aproape
Se dă un număr N
în baza 10
. Un număr M
se numește aproape de N
dacă îndeplinește următoarele trei condiții:
N
.10
diferă față de cea a lui N
în exact o poziție. Altfel spus, nu mai mult, nici mai puțin, o singură cifră diferă.1
mai mică, fie cu 1
mai mare decât cifra corespunzătoare din N
.Cunoscând numărul N
, să se scrie un program care determină:
N
.N
.OJI 2021, clasa a IX-a
Problema | Aproape | Operații I/O |
aproape.in /aproape.out
|
---|---|---|---|
Limita timp | 0.1 secunde | Limita memorie |
Total: 32 MB
/
Stivă 8 MB
|
Id soluție | #51980202 | Utilizator | |
Fișier | aproape.cpp | Dimensiune | 418 B |
Data încărcării | 14 Septembrie 2024, 07:15 | Scor / rezultat | 100 puncte |
aproape.cpp:1:2: warning: #import is a deprecated GCC extension [-Wdeprecated] #import<bits/stdc++.h> ^ aproape.cpp:2:208: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type] using namespace std;set<string>f(string s){set<string>v;if(s=="1")v.insert("0");for(int i=0;s[i];i++){if(s[i]>49||(s[i]==49&&i))s[i]--,v.insert(s),s[i]++;if(s[i]<57)s[i]++,v.insert(s),s[i]--;}return v;}main(){int v;string s;fstream("aproape.in")>>v>>s;set<string>c,b=f(s);for(auto x:b){auto t=f(x);c.insert(t.begin(),t.end());}ofstream("aproape.out")<<(v==1?s.size():v==2?b.size():c.size());} ^
Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
---|---|---|---|---|---|---|
0 | 0 secunde | OK. | 2 | 2 | ||
1 | 0 secunde | OK. | 2 | 2 | ||
2 | 0 secunde | OK. | 2 | 2 | ||
3 | 0 secunde | OK. | 2 | 2 | ||
4 | 0 secunde | OK. | 2 | 2 | ||
5 | 0 secunde | OK. | 2 | 2 | ||
6 | 0 secunde | OK. | 2 | 2 | ||
7 | 0 secunde | OK. | 2 | 2 | ||
8 | 0 secunde | OK. | 2 | 2 | ||
9 | 0 secunde | OK. | 2 | 2 | ||
10 | 0 secunde | OK. | 2 | 2 | ||
11 | 0 secunde | OK. | 2 | 2 | ||
12 | 0 secunde | OK. | 2 | 2 | ||
13 | 0 secunde | OK. | 2 | 2 | ||
14 | 0 secunde | OK. | 2 | 2 | ||
15 | 0 secunde | OK. | 2 | 2 | ||
16 | 0 secunde | OK. | 2 | 2 | ||
17 | 0 secunde | OK. | 2 | 2 | ||
18 | 0 secunde | OK. | 2 | 2 | ||
19 | 0 secunde | OK. | 3 | 3 | ||
20 | 0 secunde | OK. | 3 | 3 | ||
21 | 0 secunde | OK. | 3 | 3 | ||
22 | 0 secunde | OK. | 3 | 3 | ||
23 | 0 secunde | OK. | 3 | 3 | ||
24 | 0 secunde | OK. | 3 | 3 | ||
25 | 0 secunde | OK. | 4 | 4 | ||
26 | 0 secunde | OK. | 4 | 4 | ||
27 | 0 secunde | OK. | 4 | 4 | ||
28 | 0 secunde | OK. | 4 | 4 | ||
29 | 0 secunde | OK. | 4 | 4 | ||
30 | 0 secunde | OK. | 4 | 4 | ||
31 | 0 secunde | OK. | 4 | 4 | ||
32 | 0 secunde | OK. | 4 | 4 | ||
33 | 0 secunde | OK. | 4 | 4 | ||
34 | 0 secunde | OK. | 4 | 4 | ||
35 | 0 secunde | OK. | 4 | 4 | ||
Punctaj total | 100 |
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Aproape 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ă.