仅有距根节点为奇数距离的节点的石子被移走对答案有贡献,∵即使偶数的石子被移走,迟早会被再移到奇数,而奇数被移走后,不一定能够在移到偶数(到根了)。

最多移L个:石子数模(L+1),比较显然,也可以自己跑一跑奇数层的SG函数。

#include<cstdio>
using namespace std;
#define N 10001
int en,v[N],first[N],next[N];
void AddEdge(int U,int V)
{v[++en]=V;next[en]=first[U];first[U]=en;
}
int n,q,m,a[N],ans;
void dfs(int U,int d)
{if(d&1) ans^=a[U];for(int i=first[U];i;i=next[i])dfs(v[i],d+1);
}
int main()
{int A,B;scanf("%d%d%d",&n,&q,&m);for(int i=2;i<=n;++i){scanf("%d%d",&A,&a[i]);a[i]%=(m+1);AddEdge(A,i);}for(;q;--q){scanf("%d%d",&A,&B);a[A]=B%(m+1);ans=0;dfs(1,0);puts(ans?"Yes":"No");}return 0;
}

转载于:https://www.cnblogs.com/autsky-jadek/p/4340480.html

【博弈论】【SG函数】bzoj1777 [Usaco2010 Hol]rocks 石头木头相关推荐

  1. hdu1847-Good Luck in CET-4 Everybody! (博弈论 SG函数 找规律)

    Good Luck in CET-4 Everybody! Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K ...

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

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

  3. 网络与社会导论博弈论SG函数

    课上学习纳什均衡之后,经查找博理论相关资料,了解到巴什博奕.威佐夫博弈和SG函数等经典的模型,而SG函数正是处理一些博弈论问题的很好的办法,下面对其进行介绍. 我们来研究一个一般的游戏:给定一个有向无 ...

  4. 2016多校联合训练1 B题Chess (博弈论 SG函数)

    题目大意:一个n(n<=1000)行,20列的棋盘上有一些棋子,两个人下棋,每回合可以把任意一个棋子向右移动到这一行的离这个棋子最近的空格上(注意这里不一定是移动最后一个棋子),不能移动到棋盘外 ...

  5. 【NOI模拟赛】纸老虎博弈(博弈论SG函数,长链剖分)

    题面 某天,C 和 K 觉得很无聊,于是决定玩一个经典小游戏: 在一棵有 nnn 个结点的有根树上,标号为 iii 的节点上有 aia_iai​ 个棋子.游戏时玩家轮流操作,每次可以将任意一个节点 u ...

  6. 博弈论-SG函数和SG定理

    1.SG函数和SG定理是一个十分神奇的东西,有了它,绝大部分的博弈都可以被统一到这个上面,都可以使用SG函数解决.是一种解决博弈问题的十分方便的手段. 2.首先给出一些基本的定义:mex运算,这个是作 ...

  7. 博弈论SG函数-算法介绍及例题

    一. 基本概念: 1.  Impartial Combinatorial Games(ICG) 公平组合游戏: 1. 两名选手 2. 交替进行某种游戏规定的操作,每操作一次,选手可以在有限的操作(操作 ...

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

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

  9. CF1369F-BareLee【博弈论,SG函数】

    正题 题目链接:https://www.luogu.com.cn/problem/CF1369F 题目大意 TTT次游戏,每次给出一个sss和ttt,两个人轮流操作,可以让s=s+1s=s+1s=s+ ...

最新文章

  1. Linux那些事儿 之 戏说USB(25)设备的生命线(八)
  2. Java:多线程之线程池
  3. iOS:Tools:快速注释Doxygen
  4. MySQL事务的提交
  5. 《ASP.NET Core 真机拆解》 送书活动结果公布
  6. Javascript基础之-原型(prototype)
  7. SQL Server AUTO_FIX_Login_Users
  8. 【Git/Github学习笔记】Git的工作流程
  9. 让px单位自动转换为rem的方法
  10. Pyspark:NLP(文本分类)
  11. 面试题汇总2(吐血整理)
  12. 产品经理入职四部曲—带你顺利度过试用期
  13. Linux查看占用内存的进程
  14. 听音室-HIFI入门之10张公认的经典发烧碟
  15. coderunner运行c语言提示错误,vscode安装及使用coderunner运行C程序教程
  16. FairyGUI笔记 :MovieClip(三)
  17. java 日期格式化工具类
  18. 几种非接触涂层测厚方法原理对比
  19. java语言之面向对象
  20. bat脚本使用winRAR命令行压缩文件

热门文章

  1. python ThreadPoolExecutor线程池(实例)
  2. vue-router 传递参数的几种方式
  3. Python查找算法之 -- 列表查找和二分查找
  4. 为Apple Push开发的PHP PEAR 包:Services_Apple_PushNotification
  5. sharepoint数据库连接
  6. 大数据专家手把手教你打造实时数据湖
  7. 爬了知乎200万数据,图说程序员都喜欢去哪儿工作~
  8. 生产问题分析!delete in子查询不走索引?!
  9. 如何把安静的程序员逼成话唠
  10. Spring官方都说废掉GuavaCache用Caffeine,你还不换?