加法变乘法
我们都知道:1+2+3+ ... + 49 = 1225
现在要求你把其中两个不相邻的加号变成乘号,使得结果为2015
比如:
1+2+3+...+10*11+12+...+27*28+ 29+...+49 = 2015
就是符合要求的答案。
请你寻找另外一个可能的答案,并把位置靠前的那个乘号左边的数字提交(对于示例,就是提交10)。
注意:需要你提交的是一个整数,不要填写任何多余的内容。
答案:16
思路:
对于实例,
将实例的式子减去上面的式子,结果为:
10*11+27*28-10-11-27-28=2015-1225.
=790
用两个循环,只要求出 a*b+c*d-a-b-c-d=790。就是结果
注意是两个不相邻的加号。
代码:
#include<iostream>
using namespace std;
int main()
{
int sum=790;
for(int a=1;a<49;a++)
{
int b=a+1;
for(int c=1;c<49;c++)
{
int d=c+1;
if(b!=c)
{
if(a*b+c*d-a-b-c-d==sum)
cout<<a<<" "<<b<<" "<<c<<" "<<d<<endl;
}
}
}
return 0;
}