#include #include int tonumber(char bar, char hodn){ int val=0; switch(bar){ case 'D':val|=16;break; case 'S':val|=32;break; case 'H':val|=48;break; } switch(hodn){ case 'T':val|=10;break; case 'J':val|=11;break; case 'Q':val|=12;break; case 'K':val|=13;break; case 'A':val|=14;break; default: val|=hodn-'0'; } return val; } char bars[4]={'C','D','S','H'}; char vals[15]={0,0,'2','3','4','5','6','7','8','9','T','J','Q','K','A'}; int karty[4][13]; int cmp(const void *a,const void *b){ return *((int *)a)-*((int *)b); } void pl(void){ printf("+---+---+---+---+---+---+---+---+---+---+---+---+---+\n"); } void ph(int kdo){ char j;int i; printf("|"); for(i=0;i<13;i++){ j=vals[karty[kdo][i] & 15]; printf("%c %c|",j,j); } printf("\n"); } void pc(int kdo){ char j;int i; printf("|"); for(i=0;i<13;i++){ j=bars[karty[kdo][i] >> 4]; printf(" %c |",j); } printf("\n"); } int main(void){ int i,j,k,p,p1; char c,en,b,h; scanf("%c\n",&c); /* printf("%d\n",(int)c);*/ while(c!='#'){ p=0; switch(c){ case 'S':p=1;break; case 'W':p=2;break; case 'N':p=3;break; case 'E':p=0;break; } p1=p; en=13*4; k=0; while(en--){ b=getchar();if(b=='\n')b=getchar(); h=getchar();if(h=='\n')h=getchar(); karty[p][k]=tonumber(b,h); /* printf("aaaaa %d %d %d\n",karty[p][k],p,k);*/ p++;if(p>=4)p-=4; if(p1==p)k++; }/*rozdani karet*/ getchar(); qsort(karty[0],13,sizeof(int),cmp); qsort(karty[1],13,sizeof(int),cmp); qsort(karty[2],13,sizeof(int),cmp); qsort(karty[3],13,sizeof(int),cmp); for(p=0;p<4;p++){ switch(p){ case 0:printf("South player\n");break; case 1:printf("West player\n");break; case 2:printf("North player\n");break; case 3:printf("East player\n");break; } pl(); ph(p); pc(p); ph(p); pl(); } printf("\n"); scanf("%c\n",&c); }/*ne #*/ return 0; }