题解 | #【模板】前缀和#

【模板】前缀和

https://www.nowcoder.com/practice/acead2f4c28c401889915da98ecdc6bf

#include <iostream>
#include <vector>
using namespace std;

int main() {
    int n, q;
    cin >> n >> q;
    vector<int> arr(n+1);
    for(int i=1;i<=n;i++)
    cin>>arr[i];

  /*
  一个动态规划,下标0到l之间的数是0到r和重复,减去前面的值就是l到r之间的值。
  类型注意区间范围,防止溢出
*/
    vector<long long > dp(n + 1);
    for(int i=1;i<=n;i++)
    {
        dp[i]=dp[i-1]+arr[i];
    }

    int l=0,r=0;
    for(int i=0;i<q;i++)
    {
        cin>>l>>r;
        cout<<dp[r]-dp[l-1]<<endl;
    }
}

全部评论

相关推荐

10-17 23:18
已编辑
西北农林科技大学 Web前端
独行m:给25可以试试,但他只能给12,那就是纯纯的事精
秋招,不懂就问
点赞 评论 收藏
分享
10-13 12:53
已编辑
湖北工业大学 前端工程师
小海c:包装一下,第一个感觉是字节青训营的那个,后面那个是黑马的
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务