当前位置: 首页 > news >正文

AcWing 795. 前缀和理解

题目来源:

AcWing - 算法基础课


题目内容:

输入一个长度为 n的整数序列。

接下来再输入 m个询问,每个询问输入一对 l,r。

对于每个询问,输出原序列中从第 l个数到第 r个数的和。

输入格式

第一行包含两个整数 n和 m。

第二行包含 n个整数,表示整数数列。

接下来 m行,每行包含两个整数 l 和 r,表示一个询问的区间范围。

输出格式

共 m行,每行输出一个询问的结果。

数据范围

1≤l≤r≤n,1≤n,m≤100000,−1000≤数列中元素的值≤1000

输入样例:
5 3
2 1 3 6 4
1 2
1 3
2 4
输出样例:
3
6
10

代码实现:

#include <iostream>
#include <string>
using namespace std;
const int N=100010;
int n,m;
int a[N],s[N];
int main (){cin >>n>>m;for(int i=1;i<=n;i++) cin>>a[i];for(int i=1;i<=n;i++) s[i]=s[i-1]+a[i];while(m--){int l,r;cin>>l>>r;cout<<s[r]-a[l-1];}return 0;
}

题目心得:

1.对于算法的题,如果是刚开始学习,例题是看了题解之后才理解的,可以自己重新敲一遍代码或者对每一行代码加上注释

2.现在是积累的阶段,对每一个算法的理解,包括要去想为什么用这种方法,以及去提醒自己遇到类似的问题一定要想到这种方法


http://www.mrgr.cn/news/90658.html

相关文章:

  • Java的synchronized是怎么实现的?
  • SaaS+AI应用架构:业务场景、智能体、大模型、知识库、传统工具系统
  • Javaweb中,使用Servlet编写简单的接口
  • 在 Flutter 实现下拉刷新、上拉加载更多和一键点击回到顶部的功能
  • Baklib探索知识中台实现智能化企业运营效率提升
  • QGIS如何查看海拔剖面图
  • 微服务SpringCloud Alibaba组件nacos教程(一)【详解naocs基础使用、服务中心配置、集群配置,附有案例+示例代码】
  • 【OpenCV】双目相机计算深度图和点云
  • windows10本地的JMeter+Influxdb+Grafana压测性能测试,【亲测,避坑】
  • MySQL、MariaDB 和 TDSQL 的区别
  • dedecms 开放重定向漏洞(附脚本)(CVE-2024-57241)
  • post、get、delete、put请求
  • 如何部署Deepseek-R1:从零开始的完整指南
  • fps武器系统3:发射子弹命中反馈
  • CTF-web:java-h2 堆叠注入rce -- N1ctf Junior EasyDB
  • java八股---java02(面向对象、类、变量、方法、值传递)
  • Jenkins 新建配置Pipeline任务 三
  • 【前端】 react项目使用bootstrap、useRef和useState之间的区别和应用
  • 【AI大模型】Ollama部署本地大模型DeepSeek-R1,交互界面Open-WebUI,RagFlow构建私有知识库
  • 企业级高可用 Kubernetes 实践:基于青云 LB 搭建容灾与负载均衡集群全攻略
  • 伯克利 CS61A 课堂笔记 08 —— Strings and Dictionaries
  • RocketMQ和Kafka如何实现顺序写入和顺序消费?
  • 细说STM32F407单片机RTC入侵检测和时间戳的原理及使用方法
  • 每日一题-斐波那契数列和跳台阶
  • 伯克利 CS61A 课堂笔记 09 —— Data Abstraction
  • mapbox 从入门到精通 - 目录