news 2026/4/23 10:02:43

【模板】静态区间和(前缀和)【牛客tracker 每日一题】

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【模板】静态区间和(前缀和)【牛客tracker 每日一题】

【模板】静态区间和(前缀和)

时间限制:5秒 空间限制:512M

网页链接

牛客tracker

牛客tracker & 每日一题,完成每日打卡,即可获得牛币。获得相应数量的牛币,能在【牛币兑换中心】,换取相应奖品!助力每日有题做,丰盈牛币日益多!

题目描述

对于给定的长度为n nn的数组{ a 1 , a 2 , … , a n } \{ a_1,a_2,…,a_n \}{a1,a2,,an},你需要构建一个能够维护区间和信息的数据结构,使得其能支持:

输入描述:

第一行输入两个整数n , q ( 1 ≦ n , q ≦ 10 6 ) n,q(1≦n,q≦10^6)n,q(1n,q106)代表数组中的元素数量、操作次数。
第二行输入n nn个整数a 1 , a 2 , … , a n ( − 10 9 ≦ a i ≦ 10 9 ) a_1,a_2,…,a_n(−10^9≦a_i≦10^9)a1,a2,,an(109ai109)代表初始数组。
此后q qq行,每行输入两个整数l , r ( 1 ≦ l ≦ r ≦ n ) l,r(1≦l≦r≦n)l,r(1lrn)代表区间和查询。

输出描述:

对于每一次询问,输出一行一个整数代表区间和。

示例1

输入:

3 2 1 2 4 1 2 2 3

输出:

3 6

解题思路

本题是前缀和经典模板题,核心是通过O ( n ) O(n)O(n)预处理前缀和数组,将每次区间和查询的时间复杂度降至O ( 1 ) O(1)O(1);首先读取数组长度n nn和查询次数q qq,初始化下标从1 11开始的前缀和数组(q [ 0 ] = 0 q[0]=0q[0]=0),遍历原数组时将每个元素累加到前缀和数组中(q [ i ] = q [ i − 1 ] + a [ i ] q[i] = q[i-1] + a[i]q[i]=q[i1]+a[i]),利用l o n g longlongl o n g longlong类型存储避免因元素值范围(− 1 e 9 ˜ 1 e 9 -1e9 \~\ 1e91e9˜1e9)和n nn1 e 6 1e61e6导致的数值溢出;对于每次区间查询[ l , r ] [l,r][l,r],直接计算前缀和数组的q [ r ] − q [ l − 1 ] q[r] - q[l-1]q[r]q[l1]得到区间和并输出;该方法总时间复杂度为O ( n + q ) O(n+q)O(n+q),无冗余计算,完美适配 $n、q≤1e6的规模,高效且精准完成所有区间和查询操作。

代码内容

#include<bits/stdc++.h>usingnamespacestd;typedeflonglongll;typedefunsignedlonglongull;typedefpair<ll,ll>pii;constll p=1e9+7;constll N=1e5+10;signedmain(){ll n,t;cin>>n>>t;vector<ll>q(n+1,0);for(ll i=1;i<=n;i++){cin>>q[i];q[i]+=q[i-1];}while(t--){ll l,r;cin>>l>>r;cout<<q[r]-q[l-1]<<endl;}return0;}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 1:35:28

学长亲荐9个AI论文网站,本科生毕业论文轻松搞定!

学长亲荐9个AI论文网站&#xff0c;本科生毕业论文轻松搞定&#xff01; AI 工具如何让论文写作变得轻松高效 随着 AI 技术的不断发展&#xff0c;越来越多的学生开始借助 AI 工具来辅助自己的论文写作。尤其是对于本科生来说&#xff0c;面对繁重的论文任务&#xff0c;合理…

作者头像 李华
网站建设 2026/4/18 11:41:49

Chakradiag.dll文件丢失找不到问题 免费下载方法分享

在使用电脑系统时经常会出现丢失找不到某些文件的情况&#xff0c;由于很多常用软件都是采用 Microsoft Visual Studio 编写的&#xff0c;所以这类软件的运行需要依赖微软Visual C运行库&#xff0c;比如像 QQ、迅雷、Adobe 软件等等&#xff0c;如果没有安装VC运行库或者安装…

作者头像 李华
网站建设 2026/4/19 2:18:58

ChxHAPDS.dll文件丢失找不到 免费下载方法分享

在使用电脑系统时经常会出现丢失找不到某些文件的情况&#xff0c;由于很多常用软件都是采用 Microsoft Visual Studio 编写的&#xff0c;所以这类软件的运行需要依赖微软Visual C运行库&#xff0c;比如像 QQ、迅雷、Adobe 软件等等&#xff0c;如果没有安装VC运行库或者安装…

作者头像 李华
网站建设 2026/4/18 13:55:18

全网最全本科生必看!8款一键生成论文工具TOP8测评

全网最全本科生必看&#xff01;8款一键生成论文工具TOP8测评 2026年本科生论文写作工具测评&#xff1a;为何需要这份榜单&#xff1f; 在当前学术环境日益复杂的背景下&#xff0c;本科生在撰写论文时面临诸多挑战&#xff0c;如选题思路不清晰、文献资料查找困难、格式规范不…

作者头像 李华
网站建设 2026/4/17 21:17:26

非阻塞 IO 实验

非阻塞 IO 简介 在非阻塞 IO 模型中&#xff0c;内核数据还未就绪时&#xff0c;应用进程也可以做其他事情&#xff0c;应用进程需要 不断询问内核数据是否就绪&#xff0c;并不会被直接挂起。 如果应用程序要采用非阻塞的方式来访问驱动设备文件&#xff0c;在使用 open()函数…

作者头像 李华