当前位置: 首页 > news >正文

题目 3313: 蓝桥杯2025年第十六届省赛真题-电池分组

题目 3313: 蓝桥杯2025年第十六届省赛真题-电池分组
时间限制: 3s 内存限制: 512MB 提交: 173 解决: 76
题目描述
研究员小蓝受到实验室主任的指示,需要对实验室新研发的 N 个新型能量 电池进行分组实验。这 N 个能量电池的能量值分别用 A1, A2, . . . , AN 表示,每个 能量值都是一个整数。为了保证实验的安全性,小蓝需要将这 N 个能量电池分 成两组,使得这两组能量电池的能量值异或和相等。 

能量值的异或和计算方法如下:对于一个集合 S,其异或和等于集合中所 有元素的按位异或结果。例如,集合 {1, 2, 3} 的异或和为 1 ⊕ 2 ⊕ 3 = 0,其中 ⊕ 表示异或运算。 

现在,小蓝想知道,这 N 个能量电池能否分成两组,使得这两组能量电池 的能量值异或和相等。注意,每组至少包含一个能量电池。 

请你帮帮他!

输入格式
输入的第一行包含一个整数 T ,表示测试用例的数量。 

每个测试用例占两行: 

第一行包含一个整数 N,表示能量电池的数量。 

第二行包含 N 个整数 A1, A2, . . . , AN,表示每个能量电池的能量值。

输出格式
对于每个测试用例,输出一行。如果可以将能量电池分成两组,使得这两 组能量电池的能量值异或和相等,则输出 “YES”;否则,输出 “NO”。

样例输入复制
2
3
1 2 3
4
1 2 3 4
样例输出复制
YES
NO
提示
对于 30% 的评测用例,1 ≤ T ≤ 10,2 ≤ N ≤ 100,1 ≤ Ai ≤ 103。 

对于 100% 的评测用例,1 ≤ T ≤ 103,2 ≤ N ≤ 103,1 ≤ Ai ≤ 105。

1.分析

        无

2.代码

#include<iostream>
using namespace std;
const int MAX = 1e5 + 10;
typedef long long LL;
int T,n;
int main() {cin >> T;while (T--) {cin >> n;int t=0, re = 0,num=0;int a[100000] = { 0 };for (int i = 0; i < n; i++) {cin >> a[i];re = re ^ a[i];}for (int i = 0; i < n; i++) {t = t ^ a[i];if (t == re) {num++;t = 0;}}if(re==0) cout << "YES" << endl;else if (num >= 3&&t==0) cout << "YES" << endl;else cout << "NO" << endl;}return 0;
}

相关文章:

  • 云效流水线Flow使用记录
  • 宝塔安装easyswoole框架
  • 思澈科技助力Keep Watch Pilot 1:重新定义智能运动手表体验
  • 精益数据分析(88/126):从营收平衡到规模化扩张——企业增长的最后一道关卡
  • WPF中的图标闪烁功能
  • OpenAI O3惊现算法的自由意识,AGI初现?
  • 【PhysUnits】14 二进制数的标准化表示(standardization.rs)
  • 封装索引列表
  • 四、web安全-行业术语
  • 汽车电子/电气(E/E)架构将朝着区域(分区)式架构方向发展
  • Mac redis下载和安装
  • JavaEE初阶-网络编程
  • javaEE1
  • 从大模型加载到交互:3D Web轻量化引擎HOOPS Communicator如何打造流畅3D体验?
  • Django ToDoWeb 服务
  • 【JavaEE】-- 文件操作和IO
  • qml和JavaScript的QtObject是 QML 中用于存储无界面,纯数据。应用场景:计算器、遥控器、告警类型映射
  • 如何理解UDP 和 TCP 区别 应用场景
  • 前端生成UUID
  • Codeforces Round 1027 (Div. 3)
  • 网站建设协议/seo综合查询 站长工具
  • 温州做网站就来温州易富网络/发帖秒收录的网站
  • 网站建设公司深圳/百度搜索引擎营销如何实现
  • 网站建设 协议书 doc/宁波seo网络推广优化价格
  • 前端开发培训学校/网站seo推广招聘
  • 龙虎和网站开发/网站开发培训