#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 | #50865278 | Utilizator | |
Fișier | sumpow2.cpp | Dimensiune | 556 B |
Data încărcării | 10 Mai 2024, 18:14 | Scor / rezultat | 100 puncte |
sumpow2.cpp: In function 'int main()': sumpow2.cpp:12:36: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(int i=0;i<strlen(s);i++) ^
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 | OK. | 10 | 10 | ||
6 | 0 secunde | OK. | 10 | 10 | ||
7 | 0 secunde | OK. | 10 | 10 | ||
8 | 0 secunde | OK. | 10 | 10 | ||
9 | 0 secunde | OK. | 10 | 10 | ||
Punctaj total | 100 |
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ă.