#2195
sumpow2
Orice număr natural nenul se poate scrie în mod unic ca o sumă de puterile ale lui 2
care nu se repetă. Exemplu: 77
= 2
0
+ 2
2
+ 2
3
+ 2
6
.
Primele 16
puteri ale lui 2
se reprezintă prin litere ale alfabetului englez, după cum urmează: a = 1
, b = 2
, c = 4
, d = 8
, e = 16
, f = 32
, g = 64
, h = 128
, i = 256
, j = 512
, k = 1024
, l = 2048
, m = 4096
, n = 8192
, o = 16384
, p = 32768
.
Astfel, orice număr din intervalul [1, 2
16
]
poate fi codificat ca o combinație unică a acestor litere, aranjate în ordine alfabetică, în care orice literă apare cel mult o singură dată, astfel încât suma valorilor acestor litere să fie egală cu valoarea numărului (77 = acdg
).
Să se scrie un program C/C++
care citește două șiruri de caractere ce reprezintă două numere naturale codificate după regula de mai sus, program care afișează un șir de caractere ce reprezintă suma celor două numere.
Admitere FMI Bucuresti - 2015 (Matematica)
Problema | sumpow2 | Operații I/O |
![]() sumpow2.in /sumpow2.out
|
---|---|---|---|
Limita timp | 0.1 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
Id soluție | #29622365 | Utilizator | |
Fișier | sumpow2.cpp | Dimensiune | 660 B |
Data încărcării | 12 Mai 2021, 15:50 | Scor / rezultat | 50 puncte |
sumpow2.cpp: In function 'int main()': sumpow2.cpp:22:10: warning: array subscript has type 'char' [-Wchar-subscripts] count[x] = count[x] + cnt; ^ sumpow2.cpp:22:21: warning: array subscript has type 'char' [-Wchar-subscripts] count[x] = count[x] + cnt; ^ sumpow2.cpp:23:14: warning: array subscript has type 'char' [-Wchar-subscripts] if (count[x] > 1 && x != 'o') ^ sumpow2.cpp:26:11: warning: array subscript has type 'char' [-Wchar-subscripts] count[y] = count[x] / 2; ^ sumpow2.cpp:26:22: warning: array subscript has type 'char' [-Wchar-subscripts] count[y] = count[x] / 2; ^ sumpow2.cpp:28:10: warning: array subscript has type 'char' [-Wchar-subscripts] count[x] %= 2; ^
Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
---|---|---|---|---|---|---|
0 | 0 secunde | OK. | 10 | 10 | Exemplu | |
1 | 0 secunde | OK. | 10 | 10 | ||
2 | 0 secunde | OK. | 10 | 10 | ||
3 | 0 secunde | OK. | 10 | 10 | ||
4 | 0 secunde | OK. | 10 | 10 | ||
5 | 0 secunde | Raspuns gresit. | 10 | 0 | ||
6 | 0 secunde | Raspuns gresit. | 10 | 0 | ||
7 | 0 secunde | Raspuns gresit. | 10 | 0 | ||
8 | 0 secunde | Raspuns gresit. | 10 | 0 | ||
9 | 0 secunde | Raspuns gresit. | 10 | 0 | ||
Punctaj total | 50 |
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema sumpow2 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ă.