【蓝桥杯省赛JavaB组真题详解】加法变乘法(2015)

正月初二喜气来,祝大家新年乐开怀

题目描述

加法变乘法
我们都知道:1+2+3+ … + 49 = 1225
现在要求你把其中两个不相邻的加号变成乘号,使得结果为2015

比如:
1+2+3+…+10*11+12+…+27 * 28+29+…+49 = 2015
就是符合要求的答案。

请你寻找另外一个可能的答案,并把位置靠前的那个乘号左边的数字提交(对于示例,就是提交10)。

注意:需要你提交的是一个整数,不要填写任何多余的内容。

解题思路

利用双循环的方法
参考代码

public class Main {
     

	public static void main(String[] args) {
     
		int t=0,r=0,sum=1225;
		for (int i = 1; i < 47; i++) {
     
			t = sum - (i + i+1) + i*(i+1);//算出第一个乘号
			for (int j = i+2; j < 49; j++) {
     
				r = t - (j+j+1) + j*(j+1);//第二个乘号
				if(r==2015)
					System.out.println(i+","+j);
			}
		}
	}

}

输出结果
在这里插入图片描述

答案
16

你可能感兴趣的:(蓝桥杯JavaB组真题详解,算法,java,动态规划,数据结构)