加法变乘法(水题)(蓝桥杯)

加法变乘法
我们都知道:1+2+3+ … + 49 = 1225
现在要求你把其中两个不相邻的加号变成乘号,使得结果为2015
比如:
1+2+3+…+1011+12+…+2728+29+…+49 = 2015
就是符合要求的答案。
请你寻找另外一个可能的答案,并把位置靠前的那个乘号左边的数字提交(对于示例,就是提交10)。
注意:需要你提交的是一个整数,不要填写任何多余的内容。
反思:
这是一道很水的题,19行的代码,之所以写出来是因为当时做的时候,脑子里很懵,感觉没啥思路,反思了一下自己,做题量太少了,见的题型少,转不过来。
思路:
用1225和2015分别减去两个位置的数后比较是否相等。

#include <stdio.h>
int main()
{
    
    
 int i,j;
 int sum1,sum2;
 for(i=1; i<50; i++)
 {
    
    
  for(j=i+2; j<50; j++)
  {
    
    
   sum1=1225-(i+(i+1)+j+(j+1));//1225减去两个位置的4个数
   sum2=2015-(i*(i+1)+j*(j+1));//2015减去两个位置的数分别相乘的和
   if(sum1==sum2)//如果sum1==sum2,那么选中的两个位置符合要求
   {
    
    
    printf("%d\n",i);
    printf("***************\n");
   }
  }
 }
 return 0;
}

猜你喜欢

转载自blog.csdn.net/zlzqq/article/details/109032152