Gym - 101246D 博弈
2017-06-26 22:10
323 查看
#include <bits/stdc++.h> using namespace std; int n,m; const int maxn = 1000 + 5; vector<int> G[maxn]; vector<int> new_G[maxn]; int t[maxn]; void bfs() { memset(t,-1,sizeof(t)); queue<int> Q; Q.push(1); t[1] = 1; while(!Q.empty()) { int u = Q.front(); Q.pop(); for(int i=0;i<G[u].size();i++) { int v = G[u][i]; if(t[v]!=-1) continue; t[v] = t[u] + 1; Q.push(v); } } } void re_build() { for(int i=1;i<=n;i++) { for(int j=0;j<G[i].size();j++) { int v = G[i][j]; if(t[v]==t[i]+1) new_G[i].push_back(v); } } } int SG[maxn]; void dfs(int u) { if(new_G[u].size()==0) { SG[u] = 0; return ; } for(int i=0;i<new_G[u].size();i++) { int v = new_G[u][i]; dfs(v); } for(int i=0;;i++) { bool flag = false; for(int j=0;j<new_G[u].size();j++) { if(SG[new_G[u][j]]==i) { flag = true; break; } } if(flag ==false) { SG[u] = i; break; } } } int main() { freopen("input.txt","r",stdin); freopen("output.txt","w",stdout); scanf("%d%d",&n,&m); for(int i=0;i<m;i++) { int u,v; scanf("%d%d",&u,&v); G[u].push_back(v); G[v].push_back(u); } bfs(); re_build(); dfs(1); if(SG[1]==0) puts("Nikolay"); else puts("Vladimir"); return 0; }
View Code
相关文章推荐
- Gym 101246(ACM ICPC 2010-2011, NEERC, Southern Subregional Contest Russia, Saratov)
- Gym 100015 F Fighting for Triangles 博弈,状压dp
- Codeforces Gym 100548H The Problem to Make You Happy (图上博弈DP)
- Gym - 101246 E - Kidnapping
- codeforces gym 100694 M The Fifth Season 巴什博弈扩展 Java
- Gym - 100814L Candy Jars (博弈)
- Gym 101246D Fire in the Country (dfs暴力博弈)
- Codeforces Gym 100379I Move the queen to the corner! 威佐夫博弈变形 + 高精度
- Codeforces Gym 100379G Wythoff’s game with three piles 博弈
- Gym 101246.C - Explode 'Em All (状压dp)
- Gym 100827G Number Game (博弈)
- [codeforces] Gym - 101246C Explode 'Em All (状压+DFS + lowbit)
- 【Gym - 101350 E - Competitive Seagulls】 & 博弈
- Gym 101246.G - Revolutionary Roads(思维)
- [codeforces] Gym - 101246D Fire in the Country (BFS + 基础博弈)
- Gym 101246.H - “North-East” (二维LIS变形)
- Gym 100952G&&2015 HIAST Collegiate Programming Contest G. The jar of divisors【简单博弈】
- 【LIS】【递推】Gym - 101246H - ``North-East''
- codeforce Gym 100500A Poetry Challenge(博弈,暴搜)
- Gym - 101350E-Competitive Seagulls-博弈-思维