2015年蓝桥杯C/C++大学B组省赛真题(加法变乘法)
题目描述:
我们都知道:1+2+3+ ... + 49 = 1225
现在要求你把其中两个不相邻的加号变成乘号,使得结果为2015
比如:
1+2+3+...+10*11+12+...+27*28+29+...+49 = 2015 就是符合要求的答案。
请你寻找另外一个可能的答案,并把位置靠前的那个乘号左边的数字提交。
(对于示例,就是提交10)。
输出格式:
注意:需要你提交的是一个整数,不要填写任何多余的内容。
代码:
#include<bits/stdc++.h>
using namespace std;
int main(){
int a[50];
for(int i=1;i<=49;i++)a[i]=i;
//通过遍历乘法的位置完成查找
for(int i=1;i<=48;i++){
for(int j=i+1;j<=49;j++){
long long res=0;
res=1225-a[i]-a[i+1]-a[j]-a[j+1]+a[i]*a[i+1]+a[j]*a[j+1];
if(res==2015){
cout<<i<<" "<<j<<endl;
}
}
}
return 0;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人