5899 - 等级7:最短路

给定一个长度为 n 的数列 a,如果满足 ai&aj!=0(按位与运算结果不为零),则在节点 ij 之间存在一条长度为 a_i + a_j 的无向边。请计算从节点 1 到所有其他节点的最短路径长度。

输入

第一行一个正整数 n。

接下来一行 n 个整数a1~an

输出

输出一行n个整数,第i个为1到ide最短路长度,不能到达输出-1

样例

输入

5
1 5 6 7 8

输出

0 6 17 8 -1

提示

对于20%的数据,n \leq 10

对于 40%的数据,n \leq 10^3

对于另外 20% 的数据,所有 a_i 满足 a_i = 2^x + 2^yx \neq y

对于100% 的数据:

1 \leq n \leq 10^5

0 \leq a_i \leq 2^{30}

时间限制 1 秒
内存限制 128 MB
讨论 统计
上一题 下一题