news 2026/4/16 18:13:04

每日算法练习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/15 14:42:40

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

4.1 服务网格是什么?Istio为什么能成为行业标准?深度解析 引言 服务网格(Service Mesh)是微服务架构中的基础设施层,用于处理服务间通信。Istio作为服务网格的事实标准,提供了流量管理、安全、可观测性等功能。本文将深入解析服务网格的概念和Istio的优势。 一、服务网…

作者头像 李华
网站建设 2026/4/16 7:20:45

收藏!AI会取代程序员工作吗?Java开发者转型大模型必看指南

“AI会取代我的工作吗&#xff1f;” 这大概是当下每一个打工人&#xff0c;尤其是身处技术一线的程序员&#xff0c;深夜辗转反侧时最常琢磨的灵魂拷问。 打开编辑器&#xff0c;AI能一键生成规范代码&#xff1b;排查Bug时&#xff0c;AI能秒级定位问题根源&#xff0c;甚至…

作者头像 李华
网站建设 2026/4/15 21:59:33

基于A2A协议的Golang多智能体协同系统实战

引言 随着人工智能技术的迅猛发展,单一智能体系统已难以应对日益复杂的现实世界任务。多智能体系统(Multi-Agent System, MAS)通过分布式智能体之间的协同与合作,展现出强大的问题解决能力,在自动驾驶、智能制造、智慧城市等领域得到广泛应用。 在多智能体系统中,智能体…

作者头像 李华
网站建设 2026/4/16 7:20:59

开源二手交易小程序源码系统,打造个性化商城,功能一应俱全

温馨提示&#xff1a;文末有资源获取方式 今天&#xff0c;我要向大家推荐一款全面的二手交易小程序源码系统&#xff0c;它基于先进的技术栈开发&#xff0c;源码完全开源&#xff0c;支持二次开发&#xff0c;让您轻松搭建属于自己的二手交易商城。源码获取方式在源码闪购网。…

作者头像 李华
网站建设 2026/4/16 7:23:43

好写作AI:从数据到观点——AI在实证研究中的逻辑链条构建

当数据沉默时&#xff0c;谁能为它发声&#xff1f;面对满屏的实验数据、调查统计和案例分析&#xff0c;许多学生陷入相似的困境&#xff1a;“我的数据说明了什么&#xff1f;”“如何让这些数字形成有说服力的论证&#xff1f;”实证研究的核心挑战&#xff0c;往往不在于数…

作者头像 李华
网站建设 2026/4/16 9:02:05

书匠策AI:教育论文数据分析的“时空折叠器”,让你的研究穿越未来

在教育研究的宇宙中&#xff0c;数据是星辰&#xff0c;分析是望远镜&#xff0c;而结论则是我们试图捕捉的遥远星系。但传统数据分析工具像一台老式天文台——操作复杂、视野有限&#xff0c;研究者常被困在“清洗数据”“调试代码”“选择图表”的琐碎中&#xff0c;真正的研…

作者头像 李华