算法基础之Nim游戏

Nim游戏

  • 核心思想:博弈论

    • 结论:将所有堆的石子数全部异或起来 得到的结果
    • 若为1 则先手必胜 若为0 则先手必败
cpp 复制代码
  #include <iostream>
  #include <cstring>
  #include <algorithm>
  
  using namespace std;
  const int N = 100010;
  
  int a[N];
  int n;
  
  int main()
  {
      cin>>n;
      int x;
      cin>>x;
      int res = x;
      for(int i=1;i<n;i++) cin>>x, res ^= x;
      
      if(res) puts("Yes");
      else puts("No");
  }
相关推荐
ada7_5 分钟前
LeetCode(python)——94.二叉
python·算法·leetcode·链表·职场和发展
广都--编程每日问7 分钟前
c++右键菜单统一转化文件为utf8编码
c++·windows·python
点云SLAM7 分钟前
C++包装器之类型擦除(Type Erasure)包装器之小对象优化(SBO, Small Buffer Optimization)示例(5)
c++·内存管理·c++高级应用·c++包装器·类型擦除包装器·内存小对象优化
AI视觉网奇7 分钟前
躯体驱动 算法学习笔记
人工智能·算法
不穿格子的程序员12 分钟前
从零开始写算法——普通数组类题:数组操作中的“翻转技巧”与“前后缀分解”
数据结构·算法
逝雪Yuki14 分钟前
简单多源BFS问题
算法·leetcode·bfs·广度优先遍历
curry____30316 分钟前
study in PTA(高精度算法与预处理)(2025.12.3)
数据结构·c++·算法·高精度算法
ChoSeitaku22 分钟前
高数强化NO6|极限的应用|连续的概念性质|间断点的定义分类|导数与微分
人工智能·算法·分类
代码游侠28 分钟前
学习笔记——栈
开发语言·数据结构·笔记·学习·算法
自然语29 分钟前
人工智能之数字生命-情绪
人工智能·算法