蓝桥-【让我怎能过大年】

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lijia111111/article/details/88709154

有如下的加法算式。其中每个汉字代表一个数字。
(如存在对齐问题,可参见【图1.png】)

               年
             大年
           过大年
         能过大年
       怎能过大年
     我怎能过大年
+  让我怎能过大年
------------------
   能能能能能能能

请填写“让我怎能过大年” 所代表的整数。
所有数字连在一起,中间不要空格。例如:"3125697"。当然,这个不是正确的答案。

注意:只填写一个整数,不要填写任何多余的内容。
答案:

2072836
1572836

思路:

1、此题采用暴力破解法可以解决

2、将每个字都用字母表示出来,使用for循环嵌套,最终符合加法算式直接可以得出来

3、符合条件直接打印该数

代码:

public class Main {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int a,b,c,d,e,f,g;
		for(a=0;a<10;a++)
		{
			for(b=0;b<10;b++)
			{
				for(c=0;c<10;c++)
				{
					for(d=0;d<10;d++)
					{
						for(e=0;e<10;e++)
						{
							for(f=0;f<10;f++)
							{
								for(g=0;g<10;g++)
								{
									int h=a;
									int i=a+b*10;
									int j=a+b*10+c*10*10;
									int k=a+b*10+c*10*10+d*10*10*10;
									int l=a+b*10+c*10*10+d*10*10*10+e*10*10*10*10;
									int m=a+b*10+c*10*10+d*10*10*10+e*10*10*10*10+f*10*10*10*10*10;
									int n=a+b*10+c*10*10+d*10*10*10+e*10*10*10*10+f*10*10*10*10*10+g*10*10*10*10*10*10;
								
									int p=d+d*10+d*10*10+d*10*10*10+d*10*10*10*10+d*10*10*10*10*10+d*10*10*10*10*10*10;
									if(h+i+j+k+l+m+n==p)
										System.out.println(n);
								}
							}
						}
					}
				}
			}
		}
	}

}

猜你喜欢

转载自blog.csdn.net/lijia111111/article/details/88709154
今日推荐