7.16_D题
来源:互联网 发布:张艺兴和sm知乎 编辑:程序博客网 时间:2024/06/05 18:54
题目链接:http://code.bupt.edu.cn/problem/p/427/
一个很单纯的every-sg模型
代码:
#include <iostream>#include <vector>#include <cstdio>#include <cstring>#define N 100010using namespace std;int step[N];int sg[N];int stone[N];vector<int> g[N]; int mex(int a){ if(g[a].empty()) return 0; if(sg[a]!=-1) return sg[a]; int test=0; for(int i=0;i<g[a].size();i++) { if(sg[g[a][i]]==0) test=1; else if(sg[g[a][i]]==-1) return mex(g[a][i]); } return test;}int find_step(int a){ if(g[a].empty()) return 0; if(step[a]!=-1) return step[a]; int ma=0,mi=999999; for(int i=0;i<g[a].size();i++) { if(sg[a]==1) { if(!sg[g[a][i]]) ma=max(ma,find_step(g[a][i])); } else { if(sg[g[a][i]]) mi=min(mi,find_step(g[a][i])); } } if(sg[a]) return ma+1; else return mi+1;}int main(){ int t; scanf("%d",&t); while(t--) { memset(step,-1,sizeof(step)); memset(sg,-1,sizeof(sg)); for(int i=0;i<N;i++) g[i].clear(); int n,m; int num; scanf("%d%d",&n,&m); for(int i=2;i<=n;i++) { scanf("%d",&num); g[num].push_back(i); } for(int i=0;i<m;i++) scanf("%d",&stone[i]); for(int i=n;i>=1;i--) { sg[i]=mex(i); //cout<<sg[i]<<endl; } for(int i=1;i<=n;i++) { step[i]=find_step(i); //cout<<step[i]<<endl; } int ans=0; for(int i=0;i<m;i++) { ans=max(ans,step[stone[i]]); } if(ans%2) printf("MengMengDa!\n"); else printf("So sad...\n"); } return 0;}
0 0
- 7.16_D题
- 7.14_D题
- 二分_D
- 2016 Winter Training Day #1_D题_codefcrces 432A(贪心)
- cf 546_d
- SDUT2013级测试赛_D
- 关于接口_m和接口_d
- python2.7_d lib 无法打开
- 2017上海市高校程序设计邀请赛_D
- http://yanghengjun.blog.hexun.com/26226494_d.html
- http://lipingke.blog.hexun.com.tw/39367544_d.html
- 【不理解求解释】@CQU2014 校赛_D.Dp 标程阅读
- boj 452 解码锦标赛【动态规划】(排位赛08_D)
- 1022_D进制的A+B (20)
- Codeforces Round #Pi (Div. 2)_D. One-Dimensional Battle Ships
- <OJ_Sicily>1_D closet pair最近邻点对
- making of success(http://potato.blog.hexun.com/3690350_d.html)
- 华为EC1260-通话短信 http://majszt.blog.hexun.com/33967361_d.html
- Codeforces Round #256 (Div. 2)
- 海边到黄昏就的的减肥计划所见即所得圣诞节(Q977177223)
- HDU-2929-Bigger is Better
- 网络延时,抖动,丢包对voip和视频业务QoS的影响
- 应该掌握的协议
- 7.16_D题
- Codeforces Round #256 (Div. 2)总结
- Codeforces Round #256 (Div. 2/A)/Codeforces448A_Rewards(水题)
- Codeforces Round #256 (Div. 2/B)/Codeforces448B_Suffix Structures(字符串处理)
- LeetCode刷题笔录Search in Rotated Sorted Array
- HDOJ 1013 Digital Roots
- linux设备驱动程序_hello word 模块编译各种问题集锦
- 6.1 Merge Sorted Array
- 游戏服务器之网络收发线程处理详细分析