比赛 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;
}