蓝桥杯决赛----加法变乘法

public class 加法变乘法3 {
/*
* 加法变乘法
*/
/*1+2+3+ … + 49 = 1225
现在要求你把其中两个不相邻的加号变成乘号,使得结果为2015*/
/**
* 现在的思路就是我们已经知道总和1225,让总和减去+号变*号的两边的数,然后+两边的数相乘
*/
public static void main(String[] args) {
int sum = 1225;
int res = 0 ;
int temp = 0;
//必须找一个临时变量临时存储sum,以防下次使用时sum的值已改变
for(int i=1;i<47;i++){
sum= sum - (i+(i+1)) + i*(i+1);
for(int j=i+2;j<49;j++){
res = sum - (j+(j+1)) + j*(j+1);
if(res==2015){
System.out.println(i+” “+j);
}
}
//回溯
sum = 1225;
}
}

}

你可能感兴趣的:(简单算法)