加法变乘法(蓝桥杯详细分析)
我们都知道:1+2+3+ … + 49 = 1225
现在要求你把其中两个不相邻的加号变成乘号,使得结果为2015
比如:
1+2+3+…+1011+12+…+2728+29+…+49 = 2015
就是符合要求的答案。
请你寻找另外一个可能的答案,并把位置靠前的那个乘号左边的数字提交(对于示例,就是提交10)。
注意:需要你提交的是一个整数,不要填写任何多余的内容。
以下为解答过程
一、思路
-
让程序帮你算,不用管时间复杂度,我们只要答案;
-
假设:
第一个乘号放在第1位--------第二个在第三位;
1 ---------第二个第四位;
1 ---------一直到最后一位;
第一个乘号放在第2位--------第二个在第4位;
2 ---------第二个第5位;
2 ---------一直到最后一位;
依次类推
二、 程序代码及运行结果
#include<bits/stdc++.h> using namespace std; int main(){ int x = 1; int y=3; for(int k = 1; k<=4