测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A12817. Shortest Cycle

编程题 普及/提高-

题目描述

You are given $n$ integer numbers $a_1, a_2, \dots, a_n$ . Consider graph on $n$ nodes, in which nodes $i$ , $j$ ( $i\neq j$ ) are connected if and only if, $a_i$ AND $a_j\neq 0$ , where AND denotes the [bitwise AND operation](https://en.wikipedia.org/wiki/Bitwise_operation#AND).

Find the length of the shortest cycle in this graph or determine that it doesn't have cycles at all.

输入格式

The first line contains one integer $n$ $(1 \le n \le 10^5)$ — number of numbers.

The second line contains $n$ integer numbers $a_1, a_2, \dots, a_n$ ( $0 \le a_i \le 10^{18}$ ).

输出格式

If the graph doesn't have any cycles, output $-1$ . Else output the length of the shortest cycle.

输入输出样例

输入 #1
4
3 6 28 9
输出 #1
4
输入 #2
5
5 12 9 16 48
输出 #2
3
输入 #3
4
1 2 4 8
输出 #3
-1

说明/提示

In the first example, the shortest cycle is $(9, 3, 6, 28)$ .

In the second example, the shortest cycle is $(5, 12, 9)$ .

The graph has no cycles in the third example.
上一题 去做题 下一题