POJ3283Card Hands

来源:互联网 发布:dlna软件下载 编辑:程序博客网 时间:2024/04/29 08:55
#include<iostream>#include<algorithm>#include<stdio.h>#include<cstring>#include<map>using namespace std;int ma[151];int ma2[151];int o,d,i,j,k[100001],n,m,a[100001][60];char s[5];int main(){    ma['C']=0;    ma['D']=1;    ma['H']=2;    ma['S']=3;    ma2['A']=0;    ma2['J']=10;    ma2['Q']=11;    ma2['K']=12;    for(i=2;i<=9;i++)        ma2[i+'0']=i-1;    while(scanf("%d",&n)!=EOF&&n){        o=1;        memset(a,0,sizeof(a));        for(i=1;i<=n;i++){            scanf("%d",&m);            d=1;            for(j=0;j<m;j++){                scanf("%s",&s);                if(s[1]=='0'&&s[0]=='1')                    k[m-j-1]=9+ma[s[2]]*13;                else                    k[m-j-1]=ma[s[1]]*13+ma2[s[0]];            }            for(j=0;j<m;j++){                if(a[d][k[j]]==0)a[d][k[j]]=++o;                d=a[d][k[j]];            }            for(j=0;j<m;j++)k[j]=0;        }        printf("%d\n",o-1);    }    return 0;}
1 0
原创粉丝点击