题解 | 【模板】前缀和

【模板】前缀和

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

import sys
data=list(sys.stdin.read().splitlines())
n,m=map(int,data[0].split())
lst=list(map(int,data[1].split()))
presum=[0]*(n+1)
res=list()
for i in range(1,n+1):
    #存放前缀和presum[i]代表前i个元素之和
    presum[i]=lst[i-1]+presum[i-1]
for i in range(2,2+m):
    l,r=map(int,data[i].split())
    #计算a[l]~a[r]之和时直接用presum[r]-presum[l-1]即可
    res.append(str(presum[r]-presum[l-1]))
print("\n".join(res))

全部评论

相关推荐

哞客37422655...:你猜为什么福利这么好还得一直追着你问
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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