Олимпиадный тренинг

Задача . B. Кратчайший цикл


Даны \(n\) целых чисел \(a_1, a_2, \dots, a_n\). Рассмотрим граф на \(n\) вершинах, в котором вершины \(i\), \(j\) (\(i\neq j\)) соединены тогда и только тогда, когда \(a_i\) И \(a_j\neq 0\), где И обозначает операцию побитового И.

Найдите длину кратчайшего цикла в этом графе, или определите, что в графе нет циклов.

Входные данные

Первая строка содержит одно целое число \(n\) \((1 \le n \le 10^5)\) — количество чисел.

Вторая строка содержит \(n\) целых чисел \(a_1, a_2, \dots, a_n\) (\(0 \le a_i \le 10^{18}\)).

Выходные данные

Если в графе нет циклов, выведите \(-1\). Иначе выведите длину кратчайшего цикла.

Примечание

В первом примере, самым коротким циклом будет \((9, 3, 6, 28)\).

Во втором примере, самым коротким циклом будет \((5, 12, 9)\).

В графе нет циклов в третьем примере.


Примеры
Входные данныеВыходные данные
1 4
3 6 28 9
4
2 5
5 12 9 16 48
3
3 4
1 2 4 8
-1

time 1000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w642
Комментарий учителя