news 2026/7/1 16:39:05

acwing基础篇day2

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
acwing基础篇day2

795.前缀和

输入一个长度为 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>usingnamespacestd;constintN=100010;intn,m;inta[N],s[N];intmain(){cin>>n>>m;for(inti=1;i<=n;i++)cin>>a[i],s[i]=s[i-1]+a[i];while(m--){intl,r;cin>>l>>r;cout<<s[r]-s[l-1]<<endl;}return0;}

796.子矩阵的和

输入一个 n 行 m 列的整数矩阵,再输入 q 个询问,每个询问包含四个整数 x1,y1,x2,y2,表示一个子矩阵的左上角坐标和右下角坐标。

对于每个询问输出子矩阵中所有数的和。

输入格式

第一行包含三个整数 n,m,q。

接下来 n 行,每行包含 m 个整数,表示整数矩阵。

接下来 q 行,每行包含四个整数 x1,y1,x2,y2,表示一组询问。

输出格式

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

数据范围

1≤n,m≤1000,
1≤q≤200000,
1≤x1≤x2≤n,
1≤y1≤y2≤m,
−1000≤矩阵内元素的值≤1000

输入样例:

3 4 3 1 7 2 4 3 6 2 8 2 1 2 3 1 1 2 2 2 1 3 4 1 3 3 4

输出样例:

17 27 21

代码:

#include<iostream>usingnamespacestd;constintN=1010;inta[N][N],s[N][N];intmain(){intn,m,q;cin>>n>>m>>q;for(inti=1;i<=n;i++)for(intj=1;j<=m;j++)cin>>a[i][j];for(inti=1;i<=n;i++)for(intj=1;j<=m;j++)s[i][j]=s[i-1][j]+s[i][j-1]-s[i-1][j-1]+a[i][j];while(q--){intx1,y1,x2,y2;cin>>x1>>y1>>x2>>y2;cout<<s[x2][y2]-s[x1-1][y2]-s[x2][y1-1]+s[x1-1][y1-1]<<endl;}return0;}

797.差分

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

接下来输入 m 个操作,每个操作包含三个整数 l,r,c,表示将序列中 [l,r] 之间的每个数加上 c。

请你输出进行完所有操作后的序列。

输入格式

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

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

接下来 m 行,每行包含三个整数 l,r,c,表示一个操作。

输出格式

共一行,包含 n 个整数,表示最终序列。

数据范围

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

输入样例:

6 3 1 2 2 1 2 1 1 3 1 3 5 1 1 6 1

输出样例:

3 4 5 3 4 2

代码:

#include<iostream>usingnamespacestd;constintN=100010;inta[N],b[N];voidinsert(intl,intr,intc){b[l]+=c;b[r+1]-=c;}intmain(){intn,m;cin>>n>>m;for(inti=1;i<=n;i++)cin>>a[i];for(inti=1;i<=n;i++)insert(i,i,a[i]);while(m--){intl,r,c;cin>>l>>r>>c;insert(l,r,c);}for(inti=1;i<=n;i++)b[i]=b[i]+b[i-1];for(inti=1;i<=n;i++)cout<<b[i]<<" ";return0;}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/26 5:04:55

Java SpringBoot+Vue3+MyBatis 经方药食两用服务平台系统源码|前后端分离+MySQL数据库

系统架构设计### 摘要 随着中医药文化的普及和健康意识的增强&#xff0c;经方药食两用服务逐渐成为人们关注的焦点。传统的中医药服务模式存在信息分散、查询不便、个性化推荐不足等问题&#xff0c;亟需通过信息化手段提升服务效率和质量。本系统旨在构建一个基于现代技术的经…

作者头像 李华
网站建设 2026/7/1 8:59:36

Spring Boot与微服务核心技术面试实战解析

Spring Boot与微服务核心技术面试实战解析 场景设定&#xff1a; 谢飞机是一名初入职场的Java程序员&#xff0c;正在参加某互联网大厂的面试&#xff0c;面试官是一位严肃且专业的技术专家。 第一轮&#xff1a;Spring Boot基础与项目构建 **面试官&#xff08;严肃脸&…

作者头像 李华
网站建设 2026/6/30 15:04:40

2601,写个kde语法高亮文件

提示:如果想写一个高亮语法文件,XMLCompletion插件可能会很有帮助. 这里概述了KDE4中高亮定义XML格式.基于如下,它将描述主要组成部分及其含义和用法. Kate高亮定义文件的主要部分 在language.dtd文件中也就是DTD,保存正式定义,应该在你的系统目录安装,即$KDEDIR/share/apps/ka…

作者头像 李华
网站建设 2026/6/30 12:13:07

2601C++,复制超文本格式

超文本的剪切板格式 超文本有自己的剪切板格式(叫超文本格式(CF_HTML),可用来向其他应用助手(如Excel,Word或其他办公应用复制)提供数据. CF_HTML是包含说明,环境和该环境中的片段完全基于文本的格式.生成要发送到剪切板的数据时,必须包含数据说明,以指示剪切板版本及环境和片…

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

OTG数据充电交互讲解

随着科技的飞速发展&#xff0c;智能移动设备已成为我们生活中不可或缺的一部分。而在这些设备的连接与数据传输中&#xff0c;Type-C接口以其高效、便捷的特性逐渐占据了主导地位。OTG&#xff08;On-The-Go&#xff09;技术则进一步扩展了Type-C接口的功能&#xff0c;使得设…

作者头像 李华