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

【异或数列——博弈论】

题目

思路

  1. 异或和为0(即每一位都有偶数个1):平局
  2. 最高有效位只有唯一的1:先手必胜
  3. 最高有效位有奇数个1,偶数个0:先手必胜
    1. 若先选1产生优势,则剩下偶数个1,偶数个0:对手选1我选1抵消他的影响,对手选0我选0,必胜
  4. 最高有效位有奇数个1,奇数个0:先手必败
    1. 若先选0,则对手拿到状态3,必败,不可取
    2. 若先选1,则剩下偶数个1,奇数个0:对手坚持拿0,我不敢拿1(不然对手会得状态3)只能拿0,但是最后一个0被对手拿走,最后我拿走两个1,剩下奇数个1,必败
    3. 因此先手必败

代码

#include <bits/stdc++.h>
using namespace std;
const int N = 20;
int main()
{int t;cin >> t;while(t--){int cnt[N] = {0};int sum = 0;int n;cin >> n;for(int i = 1; i <= n; i++){int x;cin >> x;sum ^= x;for(int i = 0; i < N; i++)cnt[i] += x >> i & 1;}if(!sum) cout << "0\n";else{for(int i = N-1; i >= 0; i--){if(sum >> i & 1){if(cnt[i] == 1 || (n - cnt[i]) % 2 == 0) cout << "1\n";else cout << "-1\n";break;}}}}
}


http://www.mrgr.cn/news/90943.html

相关文章:

  • 【大模型】阿里云百炼平台对接DeepSeek-R1大模型使用详解
  • Ubuntu 22.04 Desktop企业级基础配置操作指南
  • 天芒传奇Ⅱ·前传-天芒的使用
  • 基于HTML5 Canvas 和 JavaScript 实现的烟花动画效果
  • UI自动化测试的优缺点?
  • 2025年二级建造师报名流程图解
  • 【Unity Shader编程】之GPU编程前言
  • 【数据结构】(8) 二叉树
  • 把 DeepSeek1.5b 部署在显卡小于4G的电脑上
  • GPU并行计算的深度学习pyTorch环境搭建
  • RAII(Resource Acquisition Is Initialization)机制
  • Kotlin 2.1.0 入门教程(十七)接口
  • DeepSeek预测2025目标检测算法Top 5:谁将主导下一代视觉感知?
  • 多媒体软件安全与授权新范例,用 CodeMeter 实现安全、高效的软件许可管理
  • 机器学习-1:线性回归
  • java处理pgsql的text[]类型数据问题
  • 运维-自动访问系统并截图
  • 「软件设计模式」工厂方法模式 vs 抽象工厂模式
  • 【Unity Shader编程】之顶点着色器
  • 「软件设计模式」单例模式