题解 | 【模板】前缀和
【模板】前缀和
https://www.nowcoder.com/practice/acead2f4c28c401889915da98ecdc6bf
#include <iostream> #include<vector> using namespace std; int main() { //1.读入数据 int n,q; cin>>n>>q; vector<int> arr(n+1); for(int i=1;i<=n;i++) cin >>arr[i];//将我们输入的数据填入进去 //2.预处理出来一个前缀和数组 vector<long long> dp(n+1);//设置为long long 防止移除的问题 for(int i=1;i<=n;i++) dp[i]=dp[i-1]+arr[i]; //3.使用前缀合数组 int l=0,r=0; while(q--) { cin>>l>>r;//读入 cout<<dp[r]-dp[l-1]<<endl;//将我们这个区间的和输出 } return 0; }