博弈
Spy97
这个作者很懒,什么都没留下…
展开
-
吉林大学ACM集训队选拔赛 K题 Dress as women
题目描述nnn 个点,两个人轮流去掉一些点,每次去掉的点必须共线,无法操作的人输,问先手必胜还是必败题解sg函数题目,没有点的局面是必败态,需要求其他状态的sg值状态转移时,需要判断两个状态转移合法,即判断去掉的点是否共线先用dfs将所有共线的局面搜索出来然后是枚举子集和sg函数求法的套路了#include<bits/stdc++.h>#define N 300010#define INF 0x3f3f3f3f#define eps 1e-8#define pi 3.141原创 2020-06-13 16:37:01 · 502 阅读 · 0 评论 -
博弈题目总结(一)
一、POJ 1067 取石子游戏 有两堆石子,数量任意,可以不同。游戏开始由两个人轮流取石子。游戏规定,每次有两种不同的取法,一是可以在任意的一堆中取走任意多的石子;二是可以在两堆中同时取走相同数量的石子。最后把石子全部取完者为胜者。现在给出初始的两堆石子的数目,如果轮到你先取,假设双方都采取最好的策略,问最后你是胜者还是败者。威佐夫博弈(Wythoff Game) 用...原创 2018-05-10 19:57:38 · 678 阅读 · 0 评论 -
博弈题目总结(二)
一、HDU 1730 Northcott Game 游戏在一个n行m列(1 ≤ n ≤ 1000且2 ≤ m ≤ 100)的棋盘上进行,每行有一个黑子(黑方)和一个白子(白方)。执黑的一方先行,每次玩家可以移动己方的任何一枚棋子到同一行的任何一个空格上,当然这过程中不许越过该行的敌方棋子。双方轮流移动,直到某一方无法行动为止,移动最后一步的玩家获胜。Tom总是先下(黑方)。图1是某个初始局面,图二...原创 2018-05-15 00:56:01 · 384 阅读 · 0 评论 -
牛客国庆集训派对Day3 Stones
题意:n堆石子,两人轮流取石子,每次取的个数的范围是 【a,b】,取完一堆就获胜,最后不能操作的输。题解:暴力SG+找规律首先,如果有一堆的个数在【a,b】之间,一定是先手必胜。否则的话,将区间【a,b】作为不可到达状态,为什么?因为 取完一堆游戏就结束了,所以谁都不会将当前状态变到区间【a,b】中去。然后暴力出sg值就可以找到规律了。代码中 函数 print() 为 暴...原创 2018-10-05 00:49:22 · 210 阅读 · 0 评论 -
牛客国庆集训派对Day4 树链博弈
题意:一棵根节点为1的树,告诉初始每个结点的颜色(黑或白),两个人轮流操作,规则是,选择一个黑色节点变为白色,在选择当前点到根节点路径上的任意个点(可以为没有),将其颜色翻转,最后不能操作的人输。题解:将每次操作这样理解,将一个黑点变白,然后将操作的点(不包含)到根节点路径上的点变成任意的状态。结论是如果树的所有层的黑点的个数是偶数,则先手必败。为什么?因为全是偶数,先手...原创 2018-10-05 08:56:30 · 191 阅读 · 0 评论 -
HDU 6741 2019 CCPC 秦皇岛 MUV LUV UNLIMITED
题意一颗树,两人游戏,没人可选任意个叶子结点删去,最后无法操作的输,问先手必败还是必胜题解设一颗树为 XXX ,现在,在其一个非叶子结点添加一个结点,形成树 YYY若 XXX 为必胜态,则先取刚刚加上的结点,再按照必胜的方式操作,所以YYY 必胜若 XXX 为必败态,则只取刚刚加上的结点,留给对手一个必败态,所以YYY 必胜发现,只要一个非叶子结点,链接有一个叶子结点,则为必胜态所以...原创 2019-10-07 19:36:28 · 565 阅读 · 0 评论