- 皮皮
-
#include <stdio.h>
int judgebaozi(int a,int b,int c){
if(a==b&&b==c)
return a;
else return 0;
}
int judgeduizi(int a,int b,int c){
if(a==b||a==c)
return a;
else if(a!=b&&a!=c&&b!=c)
return 0;
else return b;
}
int judgedianzi(int a,int b,int c){
return a+b+c;
}
int judge1(int a,int b,int c){
if(a==b)
return c;
else if(a==c)
return b;
else if(b==c)
return a;
}
int main()
{
int a1,a2,a3,a4,a5,a6,k,m,o,p,q,r,s,t,j;
int data[9000][6];
scanf("%d",&k);
for(m=0;m<k;m++)
for(j=0;j<6;j++)
scanf("%d",data[m]+j);
for(m=0;m<k;m++){
a1=data[m][0];
a2=data[m][1];
a3=data[m][2];a4=data[m][3];a5=data[m][4];a6=data[m][5];
o=judgebaozi(a1,a2,a3);
p=judgebaozi(a4,a5,a6);
q=judgeduizi(a1,a2,a3);
r=judgeduizi(a4,a5,a6);
s=judge1(a1,a2,a3);
t=judge1(a4,a5,a6);
if(o!=0&&p!=0){
if(a1==a4)
printf("Draw ");
else if(a1==1)
printf("lcy ");
else if(a4==1)
printf("Ypop ");
else if(a1>a4)
printf("lcy ");
else
printf("Ypop ");
}
else if(o!=0)
printf("lcy ");
else if(p!=0)
printf("Ypop ");
else if(q!=0&&r!=0){
if(q==r){
if(s==t)
printf("Draw ");
else if(s==1)
printf("lcy ");
else if(t==1)
printf("Ypop ");
else if(s>t)
printf("lcy ");
else
printf("Ypop ");
}
else if(q==1)
printf("lcy ");
else if(r==1)
printf("Ypop ");
else if(q>r)
printf("lcy ");
else printf("Ypop ");
}
else if(q!=0)
printf("lcy ");
else if(r!=0)
printf("Ypop ");
else if(judgedianzi(a1,a2,a3)==judgedianzi(a4,a5,a6))
printf("Draw ");
else if(judgedianzi(a1,a2,a3)>judgedianzi(a4,a5,a6))
printf("lcy ");
else printf("Ypop ");
}
return 0;
}
你的程序写得好,逻辑有一点问题!
- wpBeta
-
举个例子
当s=2 t=1的时候,你这个就会判断出错
简单的说,你在比点的时候判断方式不对
另外一点,当两个都是点子的时候,从题目和示例中,无法看出来是比总大小还是比最大的,最大相等再比第二个
这个需要你自己尝试了
- 贝贝
-
河南新华专注互联网教育三十二年 到校参观路费报销 免费试听课程!