现在的位置: 首页 > 综合 > 正文

hdu4224 Enumeration?

2017年11月16日 ⁄ 综合 ⁄ 共 652字 ⁄ 字号 评论关闭

比赛时,读了 最少五遍还是不懂....大哭

题目:给你三个硬币,抛足够多次,u1,d1,u2,d2,u3,d3,分别代表三个硬币正面和反面朝上和朝下的概率,u1-d2>0,=0,<0,a分别为1,0,-1;类似有b和c对应第二个硬币和第三个硬币,只有1,-1同时出现或者0 0 0的状态下 ,输出Yes 否则No

 从反面考虑,1 ,1,1或者- 1,-1,-1或者0 0 1 或者0 0 -1或者0 1 1或者0 - 1 -1是输出No

#include<iostream>
#include<cstdio>
using namespace std;
int main()
{
	int t;
	scanf("%d",&t);
	for(int k=1;k<=t;k++)
    {
		int u1,d1,u2,d2,u3,d3;
		scanf("%d %d %d %d %d %d",&u1,&d1,&u2,&d2,&u3,&d3);
		int a=0,b=0,c=0;
	    if(u1<d1)
			a=-1;
		else  if(u1>d1)
		    a=1;
		if(u2<d2)
			b=-1;
		else  if(u2>d2)
		    b=1;
		if(u3<d3)
			c=-1;
		else  if(u3>d3)
		    c=1;
		if( ((a+b+c)==3)||((a+b+c)==-3)||((a*b*c==0)&&((a+b+c==1)||(a+b+c==-1)))||(a+b+c==2)||(a+b+c)==-2)
			printf("Case %d: No\n",k);
		else
			printf("Case %d: Yes\n",k);
	}
	system("pause");
	return 0;
}

抱歉!评论已关闭.