Розмалюй і володарюй
Limits: 4 sec., 256 MiB
У Зеника є масив aa з nn елементів, при чому nn ділиться на 4. Але він хоче також утворити граф з nn вершин. Ребро між вершинами vv та uu (v≠uv≠u) він додає, якщо avav && au≠0au≠0, де && — операція побітового І.
Марічка ж хоче видалити усі ребра в Зениковому графі. Для цього за одну хвилину вона може пофарбувати рівно n2n2 вершин у синій колір, решту вершин у жовтий колір та видалити усі ребра, які проходять між вершинами однакового кольору.
Допоможіть Марічці визначити, за яку мінімальну кількість хвилин вона зможе видалити усі ребра.
Input
У першому рядку задано одне ціле число nn. У другому рядку задано nn цілих чисел aiai.
Output
Виведіть єдине число — мінімальну кількість хвилин, необхідну для видалення усіх ребер.
Constraints
4≤n≤2⋅1054≤n≤2⋅105, nn ділиться на 4,
0≤ai<2180≤ai<218.
Samples
Input (stdin) | Output (stdout) |
---|---|
4 3 6 12 9 | 2 |
Input (stdin) | Output (stdout) |
---|---|
4 0 0 0 0 | 0 |