poj2425

来源:互联网 发布:天刀捏脸详细数据 编辑:程序博客网 时间:2024/05/01 04:25
  •  #include <iostream> #include <cstdio> #include <cstring> #include <algorithm> using namespace std; #define maxn 1002  int map[maxn][maxn]; int sg[maxn]; int DFS(int x,int n) {
  • //博弈论 已哭           if(sg[x]!=-1)return sg[x];           int vis[maxn];memset(vis,0,sizeof(vis));           for(int i=0;i<n;i++)           {                   if(map[x][i]==1)                   {                                   vis[DFS(i,n)]=1;                   }           }           int j;           for(j=0;vis[j];j++);           return sg[x]=j;                  } int main() {     int n;     for(;scanf("%d",&n)==1;)     {                      memset(sg,-1,sizeof(sg));                      memset(map,0,sizeof(map));                      for(int i=0;i<n;i++)                      {                              int num;                              scanf("%d",&num);                              if(num==0)sg[i]=0;                              for(int j=0;j<num;++j)                              {                                      int K;                                      scanf("%d",&K);                                      map[i][K]=1;                              }                                                    }                                                  int C;                      for(;scanf("%d",&C)&&C;)                      {                                              int win=0;                                              for(int i=0;i<C;i++)                                              {                                                      int x;                                                      scanf("%d",&x);                                                      win^=DFS(x,n);                                              }                       if(win)printf("WIN\n");                      else printf("LOSE\n");                      }                         } return 0;  }
0 0
原创粉丝点击