#4708
Pentru un număr natural N, considerăm toate submulțimile nevide ale mulțimii {1, 2, 3, ..., N}. De exemplu, pentru N = 3, submulțimile nevide ale mulțimii {1, 2, 3} sunt: {1}, {2}, {3}, {1,2}, {1,3}, {2,3} și {1,2,3}. Pentru fiecare submulțime se ordonează mai întâi descrescător elementele sale, apoi valoarea maximă primește semnul +, valoarea următoare are semnul –, următoarea valoare + ș.a.m.d, apoi se determină suma lor. De exemplu, submulțimea {1, 2, 5, 8, 10} are asociată suma +10-8+5-2+1=6, submulțimea {4,7} are suma +7-4=3, iar submulțimea {3} are suma 3. Să se determine valoarea totală a sumelor asociate tuturor submulțimilor mulțimii {1, 2, 3, ..., N}.
XOR 2014
| Problema | subsets1 | Operații I/O |
subsets.in/subsets.out
|
|---|---|---|---|
| Limita timp | 0.2 secunde | Limita memorie |
Total: 4 MB
/
Stivă 1 MB
|
| Id soluție | #64720180 | Utilizator | |
| Fișier | subsets1.cpp | Dimensiune | 1.02 KB |
| Data încărcării | 25 Mai 2026, 23:23 | Scor/rezultat | Eroare de compilare |
subsets1.cpp: In function ‘void produs(__int128 unsigned)’: subsets1.cpp:15:38: error: ‘unsignd’ was not declared in this scope; did you mean ‘unsigned’? 15 | unsigned __int128 tmp = (unsignd __int128)cif[j] * pow + cpy; | ^~~~~~~ | unsigned subsets1.cpp:15:45: error: expected ‘)’ before ‘__int128’ 15 | unsigned __int128 tmp = (unsignd __int128)cif[j] * pow + cpy; | ~ ^~~~~~~~~ | ) subsets1.cpp: In function ‘int main()’: subsets1.cpp:33:11: warning: ignoring return value of ‘int fscanf(FILE*, const char*, ...)’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 33 | fscanf(fin, "%hd", &N); | ~~~~~~^~~~~~~~~~~~~~~~
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema subsets1 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ă.