有没有大佬帮我看看为什么一直UKE
查看原帖
有没有大佬帮我看看为什么一直UKE
772909
Lovely_CCCyh___楼主2023/4/3 17:32
#include <bits/stdc++.h>
using namespace std;
int a[200005][305];
int main()
{
	int T;
	cin>>T;
	while(T--)
	{
		memset(a,0,sizeof(a));
		int n,x=0;
		cin>>n;
		for(int i=1;i<=n;i++)
		{
			int h,w=0;
			cin>>h;
			while(h)
			{
				a[i][++w]=h%2;
				h/=2;
			}
		}
		for(int i=1;i<=32;i++)
		{
			int ans=0;
			for(int j=1;j<=n;j++)
				ans+=a[j][i];
			x=__gcd(x,ans);
		}
		if(x==0)
		{
			for(int i=1;i<=n;i++) cout<<i<<' ';
			cout<<endl;
		}
		else
		{
			for(int i=1;i<=x;i++) 
				if(x%i==0) cout<<i<<' ';
			cout<<endl;
		}
	}
	return 0;
}

2023/4/3 17:32
加载中...