
谁获冠军?
【问题】甲乙丙丁戊五个人在运动会上分获百米、二百米、跳高、跳远和铅球冠军,有
四个人猜测比赛结果:
A说:乙获铅球冠军,丁获跳高冠军。
B说:甲获百米冠军,戊获跳远冠军。
C说:丙获跳远冠军,丁获二百米冠军。
D说:乙获跳高冠军,戊获铅球冠军。
其中每个人都只说对一句,说错一句。求五人各获哪项冠军。
【算法】用1,2,3,4,5分别代表百米、二百米、跳高、跳远和铅球5个项目,用a,b,c,d,e
分别代表五人。如b=3 表示乙获跳高冠军。用多重循环穷举出来。
【答案】 甲 1 乙 2 丙 4 丁 3 戊 5
//多重穷举
for (int a = 1; a <=5; a++) {
for(int b = 1; b <=5; b++) {
for(int c = 1; c <=5; c++) {
for(int d = 1; d <=5; d++) {
for(int e = 1; e <=5; e++) {
// 条件判断 1 2 3 4 5相乘=120
if((a*b*c*d*e==120)&&((b==5||d==3)&&(a==1||e==4)&&(c==4||d==2)&&(b==3||e==5)))
//输出
System.out.println("a:"+a+" b:"+b+" c:"+c+" d:"+d+" e:"+e);
}
}
}
}
}
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)