hdu 1536

来源:互联网 发布:阿里云 音视频通话 编辑:程序博客网 时间:2024/04/29 20:16
/*  hdu  1536 Sg 函数 */#include<stdio.h>#include<string.h>int Sg[10000+10],a[100];int k;int dfs(int x){    if(Sg[x]!=-1) return Sg[x];    bool vis[110];    memset(vis,0,sizeof(vis));        for(int i=0;i<k;i++)    {        if(x>=a[i])        {           dfs(x-a[i]);               vis[Sg[x-a[i]]]=1;           }              }    int e;    for(int i=0;;i++)      if(!vis[i])      {        e=i;        break;      }    return Sg[x]=e;}int main(){    int n,m,x;    while(scanf("%d",&k)!=EOF)    {       if(k==0)  break;              memset(Sg,-1,sizeof(Sg));              for(int i=0;i<k;i++)         scanf("%d",&a[i]);                scanf("%d",&m);                     while(m--)       {          int sum=0;          scanf("%d",&n);          while(n--)          {              scanf("%d",&x);              sum^=dfs(x);                  }            if(sum)            printf("W");          else           printf("L");              }       printf("\n");      }    return 0;    }

原创粉丝点击