蓝桥杯 算法提高VIP 寻找三位数(Java解题)

本文介绍了一种通过编程方法解决数学问题的实例:寻找能够按照1:2:3比例排列的三个不同的三位数。利用Java语言进行实现,通过对1到9的数字进行九重循环,检查所有可能的组合,并确保每个数字只使用一次。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题目描述
将1,2,…,9共9个数分成三组,分别组成三个三位数,且使这三个三位数构成 
1:2:3的比例,试求出所有满足条件的三个三位数。 
例如:三个三位数192,384,576满足以上条件。 
输入
无输入文件 
输出
输出每行有三个数,为满足题设三位数。各行为满足要求的不同解。 
样例输入
样例输出

【AC代码】:

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
	int a,b,c,d,e,f,g,h,i;
	Scanner sc=new Scanner(System.in);
	for(a=1;a<=9;a++)
		for(b=1;b<=9;b++)
			for(c=1;c<=9;c++)
				for(d=1;d<=9;d++)
					for(e=1;e<=9;e++)
						for(f=1;f<=9;f++)
							for(g=1;g<=9;g++)
								for(h=1;h<=9;h++)
									for(i=1;i<=9;i++)
										if((a*100+b*10+c)*2==(d*100+e*10+f)&&(a*100+b*10+c)*3==(g*100+h*10+i))
											if(a!=b&&a!=c&&a!=d&&a!=e&&a!=f&&a!=g&&a!=h&&a!=i)
												if(b!=c&&b!=d&&b!=e&&b!=f&&b!=g&&b!=h&&b!=i)
													if(c!=d&&c!=e&&c!=f&&c!=g&&c!=h&&c!=i)
														if(d!=e&&d!=f&&d!=g&&d!=h&&d!=i)
															if(e!=f&&e!=g&&e!=h&&e!=i)
																if(f!=g&&f!=h&&f!=i)
																	if(g!=h&&g!=i)
																		if(h!=i){
																			
																			System.out.println((a*100+b*10+c)+" "+(d*100+e*10+f)+" "+(g*100+h*10+i));	
						
																		}
													
	}
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值