AGAGA XOOORRR CodeForces - 1516B

题意:

给定一个长度为n的序列,对其进行若干次操作,每次操作将某相邻两数变为他们的异或和(操作后序列长度减一)。问是否可以经过若干次操作,得到一个长度至少为2且所有元素相等的序列?

题解:

我的思路,如果最终可以得到所有元素一样,那将所有数异或得到的会是0,所以所有元素异或如果等于0就输出YES
但是也有可能是奇数个一样,这样就会剩下一个x(其他都异或为0),而x就是所有元素都等于x,所以我们可以在一开始引入一个x,然后参与所有元素的异或中,如果过程中出现0,就tot++,,然后重新引入x,(tot记录整个异或过程出现了几次0)如果最后tot>1,就输出YES,否则NO。
这个写的很详细

代码:

#include<bits/stdc++.h>
#define debug(a,b) printf("%s = %d\n",a,b);
typedef long long ll;
using namespace std;inline int read(){int s=0,w=1;char ch=getchar();while(ch<'0'||ch>'9'){if(ch=='-')w=-1;ch=getchar();}while(ch>='0'&&ch<='9') s=s*10+ch-'0',ch=getchar();//s=(s<<3)+(s<<1)+(ch^48);return s*w;
}
const int maxn=2e4+9;
int a[maxn];
int sum;
int main()
{int t;cin>>t;while(t--){int n;cin>>n;sum=0;for(int i=1;i<=n;i++){cin>>a[i];sum^=a[i];}if(sum==0)puts("YES");else{int tot=0;int ans=sum;for(int i=1;i<=n;i++){if(a[i]==0)continue;if(ans==0){tot++;ans=sum;}ans^=a[i];}if(tot>1&&(ans==0||ans==sum))puts("YES");else puts("NO");}} return 0;
}

AGAGA XOOORRR CodeForces - 1516B相关推荐

  1. Codeforces Round #717 (Div. 2)

    Codeforces Round #717 (Div. 2) CodeForces 1516 题号 题目 知识点 A Tit for Tat 贪心 B AGAGA XOOORRR 思维题 C Baby ...

  2. Codeforces Round #717 Div.2

    凌晨睡不着 练cf算了 A. Tit for Tat 题意:一行数字,最多k个操作,每次操作可以把不同的两个数一个+1一个-1,并且操作完数字不能为负,问字典序最小的方案. sb题,选头部数字减尾部数 ...

  3. Codeforces Round #717 (Div. 2)(ABCD)

    A. Tit for Tat 从前往后枚举,把前面的数减到0,然后给最后一个数加上去.操作次数没了就停止 #include<bits/stdc++.h> using namespace s ...

  4. CF #717 题解

    CF #717 题解 A - Tit or Tat 贪心地从前面拿数,加到最后一位即可. B - AGAGA XOOORRR 转化一下,是求是否能把序列分成若干段( ≥ 2 \ge 2 ≥2),每段的 ...

  5. CodeForces 375D Tree and Queries

    传送门:https://codeforces.com/problemset/problem/375/D 题意: 给你一颗有根树,树上每个节点都有其对应的颜色,有m次询问,每次问你以点v为父节点的子树内 ...

  6. 「日常训练」Bad Luck Island(Codeforces Round 301 Div.2 D)

    题意与分析(CodeForces 540D) 是一道概率dp题. 不过我没把它当dp做... 我就是凭着概率的直觉写的,还好这题不算难. 这题的重点在于考虑概率:他们喜相逢的概率是多少?考虑超几何分布 ...

  7. 【codeforces 812C】Sagheer and Nubian Market

    [题目链接]:http://codeforces.com/contest/812/problem/C [题意] 给你n个物品; 你可以选购k个物品;则 每个物品有一个基础价值; 然后还有一个附加价值; ...

  8. CodeForces 获得数据

    针对程序的输出可以看见 CodeForces :当输入.输出超过一定字符,会隐藏内容 所以:分若干个程序进行输入数据的获取 1. 1 for (i=1;i<=q;i++) 2 { 3 scanf ...

  9. codeforces水题100道 第二十七题 Codeforces Round #172 (Div. 2) A. Word Capitalization (strings)...

    题目链接:http://www.codeforces.com/problemset/problem/281/A 题意:将一个英文字母的首字母变成大写,然后输出. C++代码: #include < ...

最新文章

  1. 多视图几何总结——从本质矩阵恢复摄像机矩阵
  2. 初识Mysql(part4)--我需要知道的5条Mysql语句之排序
  3. Taro+react开发(83):taro路由配置
  4. 【qduoj - 纳新题】凑数题(恰好装满类0-1背包 或 母函数)
  5. Json(四):Json增、删、改
  6. 加密芯片在汽车无钥匙启动行业的应用
  7. 给我一个BigGAN,我就能开一家美术作品店,一幅画卖200美元
  8. Linux Shell脚本测试案例(一)
  9. 根目录下的/lib64也不能删除
  10. Flink状态专题:keyed state和Operator state
  11. ubuntu 18.04 安装teamview(包括正常的安装教程,以及一个纯终端教程)
  12. 对称加密算法基本介绍
  13. java实行图片上写字
  14. JS判断是否含有某个字段
  15. 计算机版的微信的功能是什么,赶紧更新你的PC版微信:这几项新功能你绝对想要...
  16. 通过ip反查mac地址
  17. MacBook Pro 耗电严重的终极解决办法2022年
  18. 服务器市场混乱,信息安全是关键
  19. 几句话之Cart树、方差不纯度、基尼系数
  20. 2021-09-21统计年鉴免费下载

热门文章

  1. 不得了,日本出版社竟是这样吸引死宅学编程的
  2. 《SAS编程与数据挖掘商业案例》学习笔记之五
  3. 多个查询语句能否一次把结果导出_mysql表中base64格式数据查询
  4. git checkout 单个文件_git 如何回退单个文件
  5. html 表格 左侧表头,左侧是表头的JS表格控件(自写,网上没有的)
  6. php 读取onedrive文件夹,oneindex
  7. 华科计算机课程设计,华中科大操作系统课程设计报告(附源码).doc
  8. python tablewidget 颜色_QT中,QTableView鼠标移动到item上时该item所在行的背景颜色变成其他颜色,这要怎么实现...
  9. python 复制文件_10 行 Python 代码写 1 个 USB 病毒
  10. python3的float数精度_python浮点数精度问题