比赛 |
20110928 |
评测结果 |
WAAWWWAAAW |
题目名称 |
拱猪计分 |
最终得分 |
50 |
用户昵称 |
Truth.Cirno |
运行时间 |
0.000 s |
代码语言 |
C++ |
内存使用 |
0.00 MiB |
提交时间 |
2011-09-28 20:21:53 |
显示代码纯文本
- #include <cstdio>
- using namespace std;
-
- int n[5]={0},sco[5]={0};
- bool hei[5][14]={{0}},hong[5][14]={{0}},mei[5][14]={{0}},fang[5][14]={{0}};
-
- bool checkhong(int x)
- {
- int i;
- bool flag=1;
- if (n[x]<13)
- flag=0;
- for (i=1;flag&&i<=13;i++)
- if (hong[x][i]==0)
- flag=0;
- return(flag);
- }
-
- int main(void)
- {
- freopen("heart.in","r",stdin);
- freopen("heart.out","w",stdout);
- const int RUL[14]={0,-50,-2,-3,-4,-5,-6,-7,-8,-9,-10,-20,-30,-40};
- int i,j,num;
- char ch/*,ch2,ch3,ch4*/;
- bool dou=0;
- while (0==0)
- {
-
- /*assign*/
- for (i=1;i<=4;i++)
- for (j=1;j<=13;j++)
- hei[i][j]=0;
- for (i=1;i<=4;i++)
- for (j=1;j<=13;j++)
- hong[i][j]=0;
- for (i=1;i<=4;i++)
- for (j=1;j<=13;j++)
- mei[i][j]=0;
- for (i=1;i<=4;i++)
- for (j=1;j<=13;j++)
- fang[i][j]=0;
- /*assign*/
-
- /*read*/
- for (i=1;i<=4;i++)
- {
- scanf("%d",&n[i]);
- for (j=1;j<=n[i];j++)
- {
- scanf("%*[' ']%c%d",&ch,&num);
- if (ch=='S')/*hei[i][]*/
- {
- hei[i][num]=1;
- }
- else if (ch=='H')/*hong[i][]*/
- {
- hong[i][num]=1;
- }
- else if (ch=='C')/*mei[i][]*/
- {
- mei[i][num]=1;
- }
- else/*fang[i][]*/
- {
- fang[i][num]=1;
- }
- }
- }
- /*read*/
-
- /*exit*/
- if (n[1]==0&&n[2]==0&&n[3]==0&&n[4]==0)
- break;
- /*exit*/
-
- /*assign2*/
- for (i=1;i<=4;i++)
- sco[i]=0;
- /*assign2*/
-
- /*work*/
- for (i=1;i<=4;i++)
- {
- if (n[i]==0)
- continue;
-
- /*assign3*/
- dou=0;
- /*assign3*/
-
- if (n[i]==1&&mei[i][10]==1)
- sco[i]=50;
- else
- {
- if (mei[i][10]==1)
- dou=1;
- if (checkhong(i)==1)
- {
- if (hei[i][12]==1&&fang[i][11]==1)
- sco[i]=500;
- else
- {
- sco[i]=200;
- if (hei[i][12]==1)
- sco[i]-=100;
- else if (fang[i][11]==1)
- sco[i]+=100;
- }
- }
- else
- {
- for (j=1;j<=13;j++)
- if (hong[i][j])
- sco[i]+=RUL[j];
- if (hei[i][12]==1)
- sco[i]-=100;
- else if (fang[i][11]==1)
- sco[i]+=100;
- }
- if (dou)
- sco[i]*=2;
- }
- }
- /*work*/
-
- /*print*/
-
- /* if (sco[1]>0)
- ch='-';
- else
- ch='\0';
- if (sco[2]>0)
- ch2='-';
- else
- ch2='\0';
- if (sco[3]>0)
- ch3='-';
- else
- ch3='\0';
- if (sco[4]>0)
- ch4='-';
- else
- ch4='\0';
- printf("%c%d %c%d %c%d %c%d\n",ch,sco[1],ch2,sco[2],ch3,sco[3],ch4,sco[4]);
- */
-
- for (i=1;i<=3;i++)
- {
- if (sco[i]>0)
- printf("+%d ",sco[i]);
- else
- printf("%d ",sco[i]);
- }
- if (sco[4]>0)
- printf("+%d\n",sco[4]);
- else
- printf("%d\n",sco[4]);
-
- /*print*/
-
- }
- fclose(stdin);
- fclose(stdout);
- return(0);
- }