1 条题解

  • 0
    @ 2026-4-16 19:29:56

    你告诉我 == 的优先级比 ^ 高?

    #include<bits/stdc++.h>
    using namespace std;
    const int N=2e5+10;
    int a[N],b[N];
    signed main()
    {
    	int n;cin>>n;
    	for(int i=1;i<=n;i++)cin>>a[i],b[i]=a[i];
    	sort(b+1,b+n+1);int k=unique(b+1,b+n+1)-b-1;
    	if(k>3)
    	{
    		cout<<"No";
    		return 0;
    	}
    	int sum1=0,sum2=0,sum3=0;
    	for(int i=1;i<=n;i++)
    	{
    		if(a[i]==b[1])sum1++;
    		if(a[i]==b[3])sum3++;
    		if(a[i]==b[2])sum2++;		
    	}
    	if(k==3&&sum1==sum2&&sum2==sum3&&((b[1]^b[2]^b[3])==0))
    	{
    		cout<<"Yes";
    		return 0;
    	}
    	if(k==2&&sum1*2==sum2)
    	{
    		if(b[1]==0)
    		{
    			cout<<"Yes";
    			return 0;
    		}
    	}
    	if(k==1&&b[1]==0)
    	{
    		cout<<"Yes";
    		return 0;
    	}
    	cout<<"No";
    	return 0;
    }
    • 1

    信息

    ID
    8596
    时间
    2000ms
    内存
    1024MiB
    难度
    8
    标签
    递交数
    40
    已通过
    5
    上传者