蓝桥杯javaB三羊献瑞

1.题目描述
三羊献瑞
观察下面的加法算式:
蓝桥杯javaB三羊献瑞_第1张图片

其中,相同的汉字代表相同的数字,不同的汉字代表不同的数字。

请你填写“三羊献瑞”所代表的4位数字(答案唯一),不要填写任何多余内容。

2.思路
暴力解题
三、羊、献、瑞、祥、辉、生、气,总共八个字,用a-h表示,因为每个字不同,所以啊a~
h两两互不相同。

因为这个很像十进制里的加法,且不可能为0,因为要往前进1位

求三羊献瑞代表的4位数字,每个字母的取值是0~9。

答案:1085

踩雷点:就是每一个for循环不用加括号,不然就是10的幂次增长
因为三羊献瑞代表的是一个数字,组成一个数字的每一位是从0-9中的任一个,所以for循环不用加花括号,最后才能取得一个数
3.代码实现


public class 三羊献瑞 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		//三:a  羊:b  献:c  瑞:d  祥:e  辉:f  生:g   气:h
		//祥瑞生辉
	   //+三羊献瑞
	  //三羊生瑞气
		
		
		for(int a=0;a<=9;a++)
		
			for(int b=0;b<=9;b++)
			
				for(int c=0;c<=9;c++)	
				
					for(int d=0;d<=9;d++)
					
						for(int e=0;e<=9;e++)
						
					     	for(int f=0;f<=9;f++)
							
								for(int g=0;g<=9;g++)
								
									for(int h=0;h<=9;h++)
									
										if(e*1000+d*100+g*10+f+a*1000+b*100+c*10+d==a*10000+b*1000+g*100+d*10+h&&a!=b&&a!=c&&a!=d&&a!=e&&a!=f&&a!=g&&a!=h&&b!=c&&b!=d&&b!=e&&b!=f&&b!=g&&b!=h&&c!=d&&c!=e&&c!=f&&c!=g&&c!=h&&d!=e&&d!=f&&d!=g&&d!=h&&e!=f&&e!=g&&e!=h&&f!=g&&f!=h&&g!=h&&a!=0&&e!=0)
										
											System.out.println(a*1000+b*100+c*10+d);
										
				
	}

}

你可能感兴趣的:(java,算法,java,eclipse)