算法基础之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");
  }
相关推荐
扫地的小何尚9 分钟前
NVIDIA RTX PC开源AI工具升级:加速LLM和扩散模型的性能革命
人工智能·python·算法·开源·nvidia·1024程序员节
苦藤新鸡1 小时前
8.最长的无重复字符的子串
c++·力扣
千金裘换酒1 小时前
LeetCode反转链表
算法·leetcode·链表
꧁Q༒ོγ꧂2 小时前
C++ 入门完全指南(四)--函数与模块化编程
开发语言·c++
byzh_rc2 小时前
[认知计算] 专栏总结
线性代数·算法·matlab·信号处理
汉克老师2 小时前
GESP2025年12月认证C++八级真题与解析(判断题8-10)
c++·快速排序··lcs·gesp八级·gesp8级
电报号dapp1192 小时前
钱包开发:在虚无中为数字自我筑巢
游戏·去中心化·区块链·智能合约
qq_433554542 小时前
C++ manacher(求解回文串问题)
开发语言·c++·算法
歌_顿3 小时前
知识蒸馏学习总结
人工智能·算法
闲看云起3 小时前
LeetCode-day6:接雨水
算法·leetcode·职场和发展