sg函数是一张有向无环图
尼姆博弈对每一张图sg(值)进行游戏
就是加强版的集合尼姆博弈(集合尼姆博弈中拓展是根据集合可能的新状态),这里是回归本质,sg操作是对每个状态拓展出边,并通过出边sg值集合进行mex操作,来求当前点的sg值

vector<int>G[2005];
int fg[2005];
int n, m, k, x,y;
int sg(int x)
{if (fg[x] != -1)return fg[x];unordered_set<int> s;for(auto i:G[x])s.insert(sg(i));for (int i = 0;;++i)//mexif (!s.count(i))return fg[x] = i;
}
int main()
{       cin >> n >> m >> k;f(i, 1, m){scanf("%d%d", &x, &y);G[x].emplace_back(y);}int ans = 0;memset(fg, -1, sizeof fg);f(i, 1, k){scanf("%d", &x);ans ^= sg(x);//每个棋子位置的sg//debug(sg(x));}if (ans == 0)puts("lose");else puts("win");return 0;
}

AcWing 1319. 移棋子游戏相关推荐

  1. [AcWing] 1319.移棋子游戏 博弈论 Sg函数板子题

    题目链接:1319.移棋子游戏 题解 好久没写博弈论的题了,写几道复习一下,博弈论SG主要由两大部分组成:SG函数和SG定理 SG(x)=mex(S),其中S是x的后继状态的SG函数值集合,mex(S ...

  2. 1319. 移棋子游戏(sg+图论(移棋子)邻接表)

    题目:https://www.acwing.com/problem/content/1321/ 给定一个有 N 个节点的有向无环图,图中某些节点上有棋子,两名玩家交替移动棋子. 玩家每一步可将任意一颗 ...

  3. [博弈论]移棋子游戏

    https://www.acwing.com/problem/content/1321/ 思路: 求所有棋子的sg异或之和, 记忆化搜索 得到当前结点后继的这些点的sg值之和,放到set里面(哈希表也 ...

  4. 2018.09.16 loj#10243. 移棋子游戏(博弈论)

    传送门 题目中已经给好了sg图,直接在上面跑出sg函数即可. 最后看给定点的sg值异或和是否等于0就判好了. 代码: #include<bits/stdc++.h> #define N 2 ...

  5. 博弈论sg函数——《移旗子游戏》《剪纸游戏》

    传送门:移棋子游戏 思路:按照sg函数定义,在这道题里面,不能移动的状态就是终点态,sg值设为0,其余所有的点的sg函数值就是属于其所有后继节点的sg函数值组成的集合里面非集合元素的最小的一个数字,也 ...

  6. 51nod 1534 棋子游戏

    1534 棋子游戏 题目来源: CodeForces 基准时间限制:1 秒 空间限制:131072 KB 分值: 20 难度:3级算法题 http://www.51nod.com/onlineJudg ...

  7. 翻棋子游戏与Nim游戏

    翻棋子游戏: 题意:一个棋盘上每个格子有一个棋子,每次操作可以随便选一个朝上的棋子(x,y),代表第i行第j列的棋子,选择一个形 如(x,b)或(a,y)(其中b < y,a < x)的棋 ...

  8. 51Nod_1534 棋子游戏【博弈论】

                                               51Nod_1534 棋子游戏 http://www.51nod.com/Challenge/Problem.ht ...

  9. 【ACWing】909. 下棋游戏

    题目地址: https://www.acwing.com/problem/content/911/ 给定一个有向无环图作为棋盘,棋盘上有 M M M个棋子,多个棋子可以放到棋盘中的同一个点上.两名玩家 ...

最新文章

  1. dos下命令行执行程序时候注意程序所使用文件的路径问题
  2. Java三大主流开源工作流引擎技术分析
  3. 智能车百度赛道培训第一弹-基础篇
  4. 解压与压缩ramdisk.img文件,生成uramdisk.img文件
  5. SAP用户出口(exit)问题--数据源增强
  6. poj3669 Meteor Shower(预处理+bfs)
  7. MySql 你知道事务隔离是怎么回事吗?
  8. 老板分分钟要急需应急海报怎么做?PSD分层万能模板帮你解决燃眉之急!
  9. docker使用之私有仓库构建(四)
  10. 文本过滤--grep 1
  11. Nginx配置Thinkphp3.2.3配置,访问Nginx报 No input file specified. 的问题解决
  12. LinuxQQ自动崩溃退出的解决
  13. visio 2013安装使用
  14. iOS代码混淆工具-iOS混淆工具-4.3解决工具-4.3审核被拒
  15. java长连接转短连接_HTTP的长连接和短连接转换接口(API)
  16. Android Intent定义选择器打开相机和相册
  17. DownloadSDKServer.exe 是什么,DownloadSDKServer.exe 内存占用高怎么办
  18. apache虚拟服务器搭建,httpd搭建虚拟主机与Apache网站基础服务
  19. 华为机试练习(七)书籍叠放问题
  20. bzoj2448 挖油

热门文章

  1. SiamFC:利用全卷积孪生网络进行视频跟踪
  2. 微信小程序,直接给data中的对象添加属性
  3. 数据结构java版之 栈的应用一
  4. andriodjie——xRecyclerView网络获取数据简单实现
  5. python与施耐德plc通讯_自动化工程师:施耐德 PLC常见两种编程通讯控制实例,收好不谢...
  6. 彻底解决虚拟机浏览器设置、扩展等花屏空白不显示问题
  7. Python基本用法介绍
  8. 谈管理:员工的离职原因
  9. 大话DevOps监控,团队如何选择监控工具?
  10. 组件化工具BeeHive(一):事件分发