竞赛
考级
先读取数字个数n; 用long long类型的sum存储总和(因为题目中a_i的范围很大,普通int会溢出); 循环读取n个数字,依次累加到sum中; 最后输出总和。
这个我觉得不是很好吧,反正能做对就行 其实就是想偷懒 整体思路就是拿数组存a[i],然后cnt一加就行 必须开long long! 求赞,谢
#include<iostream> using namespace std; int main(){ long long add=0,a,b; cin>>a; for(int i=1;i<=a;i++){ cin>>b; add=add+b; } cout<<add; return 0; }
注:using i=long long可以删除,但i要改成long long
题目说要开longlong,不要开short和int。 add=增加
看到和第一时间想起了前缀和,虽然是五级内容吧,但并不难理解,看代码 因s[0]=0,s[1]=s[0]+a[1]=0+a[1]=a[1] s[2]=s[1]+a[2]=a[1]+a[2] s[3]=s[2]+a[3]=a[1]+a[2]+a[3] ...... s[n]=s[n-1]+a[n]=a[1]+a[2]+a[3]+a[4]+......a[n-1]+a[n] 制作不易,求赞!
#include<bits/stdc++.h> using namespace std; int main(){ int n; cin>>n; long long sum=0; for(int i=1;i<=n;i++){ long long m; cin>>m; sum=sum+m; } cout<<sum; return 0; }
#include <bits/stdc++.h> using namespace std; int main(){ int n; cin>>n; long long a[n]; long long cnt=0; for(int i=1;i<=n;i++){ cin>>a[i]; cnt+=a[i]; } cout<<cnt; return 0; }
提交答案之后,这里将显示提交结果~