java基础穷举冠军(学习笔记)

这篇博客介绍了一个逻辑谜题,涉及甲乙丙丁戊五人在运动会中获得百米、二百米、跳高、跳远和铅球冠军的情况。每个参与者都正确预测了一项比赛结果并错误预测了另一项。通过建立并运行多重循环穷举算法,最终得出正确答案:甲获百米冠军,乙获二百米冠军,丙获跳远冠军,丁获跳高冠军,戊获铅球冠军。
摘要由CSDN通过智能技术生成

谁获冠军?

【问题】甲乙丙丁戊五个人在运动会上分获百米、二百米、跳高、跳远和铅球冠军,有
四个人猜测比赛结果:
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);
                 		}
					}
				}
			}
		}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值