csu1323

编程入门 行业动态 更新时间:2024-10-18 08:28:25

csu1323

csu1323

n为M二进制保留最高位,分开2部分来异或,大于等于n的 和 小于n的。


#include<cstdio>
#include<iostream>
#include<cstring>
#include<string>
#include<vector>
#include<algorithm>
#include<time.h>
#include<stdlib.h>
#include<cmath>
using namespace std;
int batt[100005];
int main()
{int N,M;while(scanf("%d%d",&N,&M)!=EOF){int a[2];a[0]=a[1]=0;int ans=0;for(int i=0;i<N;i++){scanf("%d",&batt[i]);if(i<2){ans^=batt[i];a[i]=batt[i];}}sort(batt,batt+N);int flag=0;int k=0,b=1;int m=ceil(log((double)M));m=1<<m;for(int i=0;i<N;i++){if(batt[i]>=m){k=i;break;}}for(int i=0;i<k&&b;i++){for(int j=k;j<N;j++){if((batt[i]^batt[j])>M){flag=1;b=0;break;}}}if(flag)puts("YES");elseputs("NO");}return 0;
}


更多推荐

csu1323

本文发布于:2024-02-06 16:52:30,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1750257.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!