60分求助
查看原帖
60分求助
1043658
Purple_meteor楼主2023/9/30 18:53

60分求助

#include<bits/stdc++.h>
using namespace std;
unsigned long long k,n,ur=0,m,c;
unsigned long long f[100];
bool ff[100]; 
int main()
{
	scanf("%d%d%d%d",&n,&m,&c,&k);
	for(int i=1;i<=n;i++)
	{
		unsigned long long x;
		scanf("%d",&x);
		int temp=0;
		while(x>0)
		{
			f[temp]=max(x%2,f[temp]);
			x/=2;
			temp++;
		}
	}
	for(int i=1;i<=m;i++)
	{
		int p,q;
		scanf("%d%d",&p,&q);
		if(f[p]==0&&ff[p]==0)
		{
			ur++;
			ff[p]=1;
		}
	}
	if(k-ur==64) cout<<18446744073709551616-n;
	else
	{
		unsigned long long ans=pow(2,k-ur);
		cout<<(ans-n);
	}
	return 0;
 } 

不知道哪儿有问题,求大佬指正orz

2023/9/30 18:53
加载中...