#include<bits/stdc++.h>
using namespace std;
#define elif else if
int p[5],i,j,sc[5],tms=1,hd,hs,acd;
string ca[5][19];
map<string,int>a,b;
void init()
{
a["H1"]=-50;
a["H2"]=-2;
a["H3"]=-3;
a["H4"]=-4;
a["H5"]=-5;
a["H6"]=-6;
a["H7"]=-7;
a["H8"]=-8;
a["H9"]=-9;
a["H12"]=-30;
a["H11"]=-20;
a["H10"]=-10;
a["H13"]=-40;
a["S12"]=-100;
a["D11"]=100;
}
int main()
{
init();
while(1)
{
for(i=1;i<=4;i++)
{
scanf("%d",&p[i]);
for(j=1;j<=p[i];j++)
cin>>ca[i][j];
}
if(!p[1]&&!p[2]&&!p[3]&&!p[4])return 0;
for(i=1;i<=4;i++)
{
for(j=1;j<=p[i];j++)
{
if(ca[i][j][0]=='H'){acd++;sc[i]+=a[ca[i][j]];}
elif(ca[i][j]=="C10")tms=2;
elif(ca[i][j]=="D11")hd=1;
else hs=1;
}
if(acd==13)sc[i]=200;
if(sc[i]==200&&hd&&hs)sc[i]=500;
if(sc[i]!=500)
{
if(hs)sc[i]-=100;
if(hd)sc[i]+=100;
}
sc[i]*=tms;
if(!sc[i]&&tms==2)sc[i]=50;
if(sc[i]>0)printf("+");
printf("%d ",sc[i]);
tms=1;hd=hs=0;acd=0;
}
printf("\n");
memset(ca,0,sizeof(ca));
memset(p,0,sizeof(p));
memset(sc,0,sizeof(sc));
}
}
每次输入H1到H13是就会报3221225477,求指教