比赛 |
20120722 |
评测结果 |
AWWWWWWWWW |
题目名称 |
杀手游戏 |
最终得分 |
10 |
用户昵称 |
冥焱 |
运行时间 |
0.023 s |
代码语言 |
C++ |
内存使用 |
0.26 MiB |
提交时间 |
2016-02-19 11:49:37 |
显示代码纯文本
#include<stdio.h>
#include<string.h>
int i[10]={0},p[10]={0},pp=1;
char a[10];
int aa(int aaa)
{
if(a[0]=='=')
{
pp=0;
return 9;
}
if(a[0]=='B')
return 6;
else if(a[0]=='G'&&a[1]=='r')
return 3;
else if(a[0]=='G')
return 1;
else if(a[0]=='K')
return 2;
else if(a[0]=='M')
return 5;
else
return 4;
}
void winorlose(int l)
{
if(l==1)
{
for(int k=0;k<2&&pp;k++)
{
gets(a);
i[aa(1)]++;
}
i[7]+=2;
for(;i[1]>0;i[1]--,i[7]--)
if(p[6]>0)
p[6]--;
else
p[0]--;
for(;i[2]>0;i[2]--,i[7]--)
p[0]--;
for(;i[3]>0;i[3]--,i[7]--)
if(p[4]>0&&pp)
{
p[4]--;
gets(a);
p[aa(1)]++;
p[7]++;
}
else if(p[5]>0)
p[5]--;
else
p[0]--;
if(i[6]>0)
{
i[6]--;
i[7]--;
if(p[4]>0&&pp)
{
p[4]--;
gets(a);
p[aa(1)]++;
p[7]++;
}
else if(p[5]>0)
p[5]--;
else
p[0]--;
}
while(i[7]>i[0]&&i[6]>=0)
{
i[6]--;
i[7]--;
}
while(i[7]>i[0]&&i[5]>=0)
{
i[5]--;
i[7]--;
}
while(i[7]>i[0]&&i[4]>=0)
{
i[4]--;
i[7]--;
}
if(p[0]<=0)
printf("WIN\n");
else
winorlose(0);
}
else
{
for(int k=0;k<2&&pp;k++)
{
gets(a);
p[aa(1)]++;
}
for(;p[1]>0;p[1]--)
if(i[6]>0)
i[6]--;
else
i[0]--;
for(;p[2]>0;p[2]--)
i[0]--;
for(;p[3]>0;p[3]--)
if(i[4]>0&&pp)
{
i[4]--;
gets(a);
i[aa(1)]++;
i[7]++;
}
else if(i[5]>0)
i[5]--;
else
i[0]--;
if(p[6]>0)
{
p[6]--;
if(i[4]>0&&pp)
{
i[4]--;
gets(a);
i[aa(1)]++;
i[7]++;
}
else if(i[5]>0)
i[5]--;
else
i[0]--;
}
while(p[7]>p[0]&&p[6]>=0)
{
p[6]--;
p[7]--;
}
while(p[7]>p[0]&&p[5]>=0)
{
p[5]--;
p[7]--;
}
while(p[7]>p[0]&&p[4]>=0)
{
p[4]--;
p[7]--;
}
if(i[0]<=0)
printf("LOSE\n");
else
winorlose(1);
}
}
int main()
{
freopen("bang.in","r",stdin);
freopen("bang.out","w",stdout);
i[0]=i[7]=4;
p[0]=p[7]=4;
for(int j=0;j<4&&pp;j++)
{
gets(a);
i[aa(1)]++;
}
for(int j=0;j<4&&pp;j++)
{
gets(a);
p[aa(1)]++;
}
winorlose(1);
return 0;
}