Cerință
După ce a câștigat Euro, Denis se duce la un festival în Germania pentru a sărbători. Acolo, el găsește sticle cu suc așezate într-o linie, sticla având suc de tipul . De asemenea, el primește un voucher de la organizatori, cu ajutorul căruia își poate alege o secvență de sticle, turnându-și câte puțin suc din fiecare sticlă din secvență în pahar. Bunătatea sucului din pahar este egală cu xorul tipurilor de suc din secvența de sticle aleasă.
De exemplu, dacă el își alege o secvență de sticle cu suc de tipurile , sucul din paharul său va avea bunătatea egală cu .
Deoarece Denis este prea ocupat ca să se mai gândească ce secvență ar trebui sa aleagă, el vă cere să îl ajutați să calculeze pentru fiecare poziție bunătatea maximă a unei secvențe care conține și poziția .
Date de intrare
Pe prima linie a fișierului de intrare xor.in
se găsește un număr . Pe a doua linie se gasesc numere naturale, al -lea dintre ele reprezentând .
Date de ieșire
Pe prima linie a fișierului de ieșire xor.out
se vor găsi numere naturale, al -lea dintre ele reprezentând xorul maxim al unei secvențe care conține poziția .
Restricții și precizări
# | Punctaj | Restricții |
---|---|---|
0 | 0 | Exemplul de mai jos. |
1 | 10 | |
2 | 20 | |
3 | 70 | Fără restricții suplimentare |
Exemplul 1
xor.in
3
5 4 2
xor.out
5 6 6
Explicație
Secvențele posibile sunt:
- cu xorul ,
- cu xorul ,
- cu xorul ,
- cu xorul ,
- cu xorul ,
- cu xorul .
Pentru prima poziție, secvența are bunătatea(xorul) , fiind cea mai mare bunătate a unei secvențe care conține prima poziție. Pentru a 2-a si a 3-a poziție, secvența cu bunătatea este cea cu bunătatea cea mai mare care le conține.
Exemplul 2
xor.in
10
20 35 102 36 3 26 3 92 65 120
xor.out
118 123 123 123 127 127 127 127 127 127