hdu 5996 dingyeye loves stone
来源:互联网 发布:互联网网络销售o2o 编辑:程序博客网 时间:2024/05/16 06:09
点击打开链接
题意: 给你一个树,两个人做游戏,回合制。
每个回合,一个人能选择一个节点,将该节点的存值像该节点的父亲节点转移,该值>=1 .最终全部转移到0节点,如果没有可操作的价值,即无步可走,lose。
你先走,问你能否赢。
首先这肯定是个nim,暴力来一发吧, TE。。。
那再推推,,树的深度!!, 对啊,偶数深度,先手如果拿一个上去,后手可以模仿先手往上放,那就等于没放。还是原来的局面。
奇数深度则相反。
所以只用对深度为奇数的数nim就好,再来一发,TE。。。。
我是用并查集,每次一个一个找深度为多少,
最后,开了一个数组,dep记录深度,让该点的深度等于该点父节点深度+1,,,,AC
。
#include<bits/stdc++.h>#define LL long longusing namespace std;const int maxn=100000+10;int a[maxn],f[maxn],dep[maxn];int main(){ int T,n; scanf("%d",&T); while(T--){ int ans=0; scanf("%d",&n); for(int i=1;i<n;i++){ scanf("%d",&f[i]); dep[i]=dep[f[i]]+1; } for(int i=0;i<n;i++) scanf("%d",&a[i]); for(int i=1;i<n;i++){ if(dep[i]&1) ans^=a[i]; } if(ans) printf("win\n"); else printf("lose\n"); } return 0;}
0 0
- HDU 5996 dingyeye loves stone
- hdu 5996 dingyeye loves stone
- hdu 5996 dingyeye loves stone
- 【hdu 5996】dingyeye loves stone
- HDU 5996 dingyeye loves stone
- hdu 5996 dingyeye loves stone
- hdu 5996 dingyeye loves stone
- HDU 5996 dingyeye loves stone
- HDU 5996 dingyeye loves stone(Nim 变形)
- HDU 5996 BestCoder Round #90 1002 dingyeye loves stone 博弈
- hdu 5996 dingyeye loves stone nim同阶博弈
- 【HDU 5996 dingyeye loves stone】+ 尼姆博弈
- HDU 5996 dingyeye loves stone (树形博弈)
- HDU 5996 dingyeye loves stone (DFS+博弈)
- hdoj 5996 - dingyeye loves stone(阶段博弈)
- HDOJ 5996 dingyeye loves stone(阶梯博弈)
- dingyeye loves stone
- hdu5996 dingyeye loves stone
- C++贪心算法实现马踏棋盘问题
- C#最简单写入读出XML配置文件
- 介绍国外15个播客,可进入
- Java多线程执行业务方法
- 虚继承
- hdu 5996 dingyeye loves stone
- Leetcode 84. Largest Rectangle in Histogram (Hard) (cpp)
- Html源文件查看器(Android)
- PHP中的数组(拆分与合并)
- Poedu_C语言提升_Lesson03_20161117_数据类型3
- MySQL的外键约束执行不了
- codeforces-745【思维】
- github pages + Hexo + 域名绑定搭建个人博客增强版
- 第 9 章 - 11 Domino Web服务器应用程序接口(DSAPI)