2692.cpp

来自「poj的几道题」· C++ 代码 · 共 61 行

CPP
61
字号
/*假币问题*/
#include "iostream"
#include "string.h"
char l[3][7],r[3][7],result[3][7];
using namespace std;


bool heavy(char x)
{
	int i;
	for(i=0;i<3;i++)
		switch(result[i][0])
	{
		case 'u':if(strchr(l[i],x)==0) return false;break;
		case 'd':if(strchr(r[i],x)==0) return false;break;
		case 'e':if(strchr(l[i],x)!=0||strchr(r[i],x)!=0) return false;break;
	}
	return true;
}


bool light(char x)
{
	int i;
	for(i=0;i<3;i++)
		switch(result[i][0])
	{
		case 'u':if(strchr(r[i],x)==0) return false;break;
		case 'd':if(strchr(l[i],x)==0) return false;break;
		case 'e':if(strchr(l[i],x)!=0||strchr(r[i],x)!=0) return false;break;
	}
	return true;
}


int main()
{
	char c;
	int n,i;
	cin>>n;
	while(n--)
	{
		for(i=0;i<3;i++)
			cin>>l[i]>>r[i]>>result[i];
		for(c='A';c<='L';c++)
		{
			if(heavy(c))
			{
				cout<<c<<" is the counterfeit coin and it is heavy."<<endl;
				break;
			}
			if(light(c))
			{
				cout<<c<<" is the counterfeit coin and it is light."<<endl;
				break;
			}
		}
	}
	return 0;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?