#4642
sumxor
Se dă o permutare A
a numerelor de la 1
la N
. Operatorul ⊕
din limbajul C/C++ realizează operația XOR (disjuncție exclusivă pe biți). Scrieți un program care să rezolve următoarele două cerințe:
1. Construiți o altă permutare B
astfel încât expresia E = (A1 + B1) ⊕ (A2 + B2) ⊕ ... ⊕ (AN + BN)
să aibă valoare minimă.
2. Construiți o altă permutare B
astfel încât expresia E = (A1 + B1) ⊕ (A2 + B2) ⊕ ... ⊕ (AN + BN)
să aibă valoare maximă.
CNER CODE clasa a X-a
Problema | sumxor | Operații I/O |
sumxor.in /sumxor.out
|
---|---|---|---|
Limita timp | 0.5 secunde | Limita memorie |
Total: 32 MB
/
Stivă 8 MB
|
Id soluție | #51326618 | Utilizator | |
Fișier | sumxor.cpp | Dimensiune | 2.55 KB |
Data încărcării | 07 Iunie 2024, 11:34 | Scor / rezultat | Eroare de compilare |
sumxor.cpp: In function 'int main()': sumxor.cpp:46:32: warning: suggest parentheses around comparison in operand of '^' [-Wparentheses] else if (i % 2 == 0 ^ change) rezultat = i - 1; ^ sumxor.cpp:47:32: warning: suggest parentheses around comparison in operand of '^' [-Wparentheses] else if (i % 2 == 1 ^ change) rezultat = i + 1; ^ sumxor.cpp:62:17: error: 'else' without a previous 'if' else if (i == pow(2, int(log2(i)))) { ^ sumxor.cpp:66:32: warning: suggest parentheses around comparison in operand of '^' [-Wparentheses] else if (i % 2 == 0 ^ change) rezultat = i - 1; ^ sumxor.cpp:67:32: warning: suggest parentheses around comparison in operand of '^' [-Wparentheses] else if (i % 2 == 1 ^ change) rezultat = i + 1; ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema sumxor 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ă.