news 2026/4/1 22:02:47

每日算法练习Day04

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
每日算法练习Day04

B3612 【深进1.例1】求区间和

题目来源:https://www.luogu.com.cn/problem/B3612#ide

题目描述

给定nnn个正整数组成的数列a1,a2,⋯ ,ana_1, a_2, \cdots, a_na1,a2,,anmmm个区间[li,ri][l_i,r_i][li,ri],分别求这mmm个区间的区间和。

输入格式

第一行包含一个正整数nnn,表示序列的长度。

第二行包含nnn个正整数a1,a2,⋯ ,ana_1,a_2, \cdots ,a_na1,a2,,an

第三行包含一个正整数mmm,表示区间的数量。

接下来mmm行,每行包含两个正整数li,ril_i,r_ili,ri,满足1≤li≤ri≤n1\le l_i\le r_i\le n1lirin

输出格式

mmm行,其中第iii行包含一个正整数,表示第iii组答案的询问。

输入输出样例 #1

输入 #1

4 4 3 2 1 2 1 4 2 3

输出 #1

10 5

说明/提示

样例解释

111到第444个数加起来和为101010。第222个数到第333个数加起来和为555

数据范围

对于50%50 \%50%的数据:n,m≤1000n,m\le 1000n,m1000

对于100%100 \%100%的数据:1≤n,m≤1051 \le n, m\le 10^51n,m1051≤ai≤1041 \le a_i\le 10^41ai104

题解

importjava.util.Scanner;// 1. 导入扫描器类,用于读取控制台输入publicclassMain{// 2. 定义主类,Java程序入口,类名需和文件名一致publicstaticvoidmain(String[]args){// 3. 主方法,程序执行的入口Scannersc=newScanner(System.in);// 4. 创建Scanner对象,关联控制台输入流intn=sc.nextInt();// 5. 读取第一个整数n:表示原数组的元素个数// 6. 定义原数组a和前缀和数组s,长度n+1(索引0闲置,1~n存数据,和C++1-based索引一致)int[]a=newint[n+1];int[]s=newint[n+1];// 7. 循环读取n个元素,构建原数组a + 前缀和数组s(核心预处理)for(inti=1;i<=n;i++){a[i]=sc.nextInt();// 8. 读取第i个整数,存入原数组a的第i位s[i]=s[i-1]+a[i];// 9. 前缀和核心公式:s[i] = 前i个元素的累加和}intm=sc.nextInt();// 10. 读取整数m:表示后续的区间和查询次数// 11. 循环处理m次查询,每次O(1)时间出结果for(inti=1;i<=m;i++){intl=sc.nextInt();// 12. 读取查询的左边界lintr=sc.nextInt();// 13. 读取查询的右边界r// 14. 区间和核心计算:[l,r]的和 = 前r项和 - 前l-1项和,直接打印结果System.out.println(s[r]-s[l-1]);}sc.close();// 15. 关闭Scanner,释放输入流资源}}

这个是关于前缀和的问题,先设置好前缀和的数组,然后通过for循环来得到每一个前缀和,得到一个前缀和数组。
然后读取输入的l和r,通过循环可以获得多组l和r的相减的结果。然后输出就可以了。
要注意到边界条件,l不能小于1

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/1 17:26:36

从九尾狐AI案例看企业AI培训的技术架构与落地实践

第一章&#xff1a;企业AI培训的技术架构设计 现代企业AI培训需要解决的核心问题是&#xff1a;如何将复杂的AI技术转化为可落地的业务解决方案。九尾狐AI的成功实践为我们提供了一个完整的技术架构参考。 class EnterpriseAI_Training:def __init__(self, training_model, i…

作者头像 李华
网站建设 2026/3/27 5:10:09

4.1 服务网格是什么?Istio为什么能成为行业标准?深度解析

服务网格是什么?Istio为什么能成为行业标准?深度解析 引言 服务网格(Service Mesh)是微服务架构的基础设施层,Istio 作为服务网格的事实标准,正在改变微服务治理的方式。本文将深入解析服务网格的概念、Istio 的架构设计,以及为什么 Istio 能成为行业标准。 一、服务…

作者头像 李华
网站建设 2026/4/1 12:31:59

谷歌seo如何发布外链?实战操作全流程深度解析

做谷歌SEO的人都知道&#xff0c;外链就像是别人给你的网站投的信任票。虽然现在谷歌的算法越来越聪明&#xff0c;不再像以前那样单纯看数量&#xff0c;但优质的外链依然是排名的核心权重之一。很多新手在操作时经常感到迷茫&#xff0c;不知道从哪儿下手&#xff0c;或者发了…

作者头像 李华
网站建设 2026/3/27 19:20:43

收藏!后端岗位遇冷,大模型+算法岗成程序员新出路,小白也能入局

最近这段时间&#xff0c;不少刷招聘软件的开发者都陷入了困惑——曾经热门的后端岗位&#xff0c;如今彻底“降温”了。岗位数量肉眼可见地锐减&#xff0c;薪资涨幅基本停滞不前&#xff0c;更有求职者吐槽&#xff0c;自己疯狂投递了70份后端简历&#xff0c;最终只收到3个面…

作者头像 李华
网站建设 2026/3/27 15:03:04

论文分享与解析|使用LLM改进文档不一致性检测中的证据提取

一、研究背景与问题定义 近年来&#xff0c;大型语言模型&#xff08;LLM&#xff09;凭借其强大的语言理解与生成能力&#xff0c;在自然语言处理、金融分析、医疗文本处理等多个领域展现出广泛的应用前景。然而&#xff0c;在文档不一致性检测这一具体任务上&#xff0c;相关…

作者头像 李华