或(hard version)
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
Problem Description
给定大小为的数组,对于每个,输出有多少个,使得
其中代表按位或
Input Format
第一行输入一个整数,表示数组大小
第二行输入个整数
Output Format
输出行,第行表示对于满足要求的的个数
Sample
5
0 1 2 3 4
0
1
1
3
1
Hint
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
给定大小为n的数组a,对于每个1≤i≤n,输出有多少个j=i,使得ai or aj=ai
其中or代表按位或
第一行输入一个整数n,表示数组大小
第二行输入n个整数
输出n行,第i行表示对于i满足要求的j的个数
5
0 1 2 3 4
0
1
1
3
1
1≤n≤106,0≤ai≤105