W razie problemów technicznych ze Szkopułem, prosimy o kontakt mailowy pod adresem [email protected].
Jeśli chciałbyś porozmawiać o zadaniach, rozwiązaniach lub problemach technicznych, zapraszamy na serwery Discord. Są one moderowane przez społeczność, ale członkowie zespołu technicznego też są tam aktywni.
Byteman is a scientist who investigates creation of crystals consisting of atoms of different elements. He has designed a special process for creating crystals and has discovered a formula specifying the amount of elements that can be used to create a crystal. Now, he wonders how many different crystals can be created in such process.
For non-negative integers and , by we shall denote their bit-wise xor. The basic xor for single bits is defined by: , .
Byteman knows different elements that can be used to create crystals - these are numbered from to . For each element there is an upper bound on number of atoms of this element that can be used to create a crystal. Byteman can create one unique crystal composed of atoms of the element (for ), if and only if:
Note that the last condition is quite obvious and essentially states that every crystal is composed of at least one atom.
Write a programme which:
The first line of the standard input contains the number of elements , . The second, last line of the standard input contains positive integers , separated by single spaces, .
Your programme should write one integer to the standard output - total number of different crystals that can be created. You can assume that this number is less than .
For the input data:
3 2 1 3
the correct result is:
5
And the following are every possible numbers of atoms of each particular element: , , , , .
Task author: Jakub Pawlewicz.