蓝桥杯刷题DAY2:二维前缀和 一维前缀和 差分数组
闪耀的灯光
📌 题目描述
蓝桥公园是一个适合夜间散步的好地方,公园可以被视为由 n × m 个矩形区域构成。每个区域都有一盏灯,初始亮度为 a[i][j]。
小蓝可以选择一个大的矩形区域,并按下开关一次,这将使得该区域内每盏灯的亮度减少 1,但每个区域内的灯的亮度最多只能减少至 a[i][j] - c。如果此时亮度已达到 a[i][j] - c,再次按下开关将使得灯的亮度恢复为 a[i][j]。
现在,小蓝将进行 t 次操作。每次操作他会选择一个矩形区域,该区域的左上角端点为 (x₁, y₁),右下角端点为 (x₂, y₂),然后将该区域内所有灯按下 k 次开关。
他想知道,在每次操作结束后,该区域内所有灯的总亮度是多少?在下一次操作前,公园内所有灯光会恢复到初始值。
数据保证每盏灯的亮度不会减少至负数。
📌 输入格式
- 第一行 输入三个正整数
n、m和c,含义如上所述。 - 接下来
n行,每行输入m个正整数,代表灯的初始亮度a[i][j]。 - 第
n+2行 输入一个正整数t,表示小蓝的操作次数。 - 接下来
t行,每行输入5个整数x₁, y₁, x₂, y₂, k:(x₁, y₁):矩形区域的左上角坐标。(x₂, y₂):矩形区域的右下角坐标。k:该区域内所有灯按下的开关次数。
📌 输出格式
输出 t 行,每行一个正整数,表示每次操作结束后该区域内所有灯的总亮度。
📌 样例输入
3 3 3 14 14 17 13 15 18 13 16 19 3 1 1 2 2 3 2 2 3 3 5 2 3 3 3 4
📌 样例输出
44 64 37
📌 样例解释
🔹 第一次操作 (1,1) → (2,2), k=3
初始状态
14 14 17 13 15 18 13 16 19
按 3 次开关后
11 11 17 10 12 18 13 16 19
答案:
11 + 11 + 10 + 12 = 44
🔹 第二次操作 (2,2) → (3,3), k=5
初始状态
14 14 17 13 15 18 13 16 19
按 5 次开关后
14 14 17 13 14 17 13 15 18
答案:
14 + 17 + 15 + 18 = 64
🔹 第三次操作 (2,3) → (3,3), k=4
初始状态
14 14 17 13 15 18 13 16 19
按 4 次开关后
14 14 17 13 15 18 13 16 19
答案:
18 + 19 = 37
📌 评测数据规模
| 约束条件 | 范围 |
|---|---|
| 矩阵大小 | 1 ≤ n, m ≤ 300 |
| 最大减少值 | 1 ≤ c ≤ 10 |
| 操作次数 | 1 ≤ t ≤ 10⁵ |
| 灯的初始亮度 | 10 ≤ a[i][j] ≤ 10⁹ |
| 开关次数 | 1 ≤ k ≤ 10⁹ |
| 查询范围 | 1 ≤ x₁ ≤ x₂ ≤ n, 1 ≤ y₁ ≤ y₂ ≤ m |
📌 运行限制
| 语言 | 最大运行时间 | 最大运行内存 |
|---|---|---|
| C++ | 1s | 256M |
| C | 1s | 256M |
| Java | 2s | 256M |
| Python3 | 3s | 256M |
子串简写
题目描述
程序猿圈子里正在流行一种很新的简写方法:对于一个字符串,只保留首尾字符,将首尾字符之间的所有字符用这部分的长度代替。例如 internationalization 简写成 i18n,Kubernetes(注意连字符不是字符串的一部分)简写成 K8s,Lanqiao 简写成 L5o 等。
在本题中,我们规定长度 大于等于 K 的字符串都可以采用这种简写方法(长度小于 K 的字符串不配使用这种简写)。
给定一个字符串 S 和两个字符 c1 和 c2,请你计算 S 中 有多少个以 c1 开头,c2 结尾的子串 可以采用这种简写?
输入格式
- 第一行包含一个整数
K。 - 第二行包含一个字符串
S和两个字符c1和c2。
输出格式
- 一个整数代表答案。
样例输入
4
abababdb a b
样例输出
6
样例说明
符合条件的子串如下所示,中括号内是该子串:

评测用例规模与约定
- 对于 20% 的数据,保证:2 ≤ K ≤ |S| ≤ 10,000
- 对于 100% 的数据,保证:2 ≤ K ≤ |S| ≤ 500,000
S仅包含小写字母。c1和c2均为小写字母。|S|代表字符串S的长度。
运行限制
| 语言 | 最大运行时间 | 最大运行内存 |
|---|---|---|
| C++ | 1s | 256M |
| C | 1s | 256M |
| Java | 2s | 256M |
| Python3 | 3s | 256M |
题解:
import os
import sys# 请在此输入您的代码if __name__=="__main__":K=int(input())S,c1,c2=input().split()n=len(S)myarray=[0]*nif S[0]==c2:myarray[0]=1for i in range(1,n):if S[i]==c2:myarray[i]=myarray[i-1]+1else:myarray[i]=myarray[i-1]total=0for i in range(n):if S[i]==c1:l=i+K-1if l<n:total+=myarray[n-1]-myarray[i+K-2]print(total)
重新排序
问题描述
给定一个数组 A 和一些查询 [Li,Ri],求数组中第 Li 至第 Ri 个元素之和。
小蓝觉得这个问题很无聊,于是他想重新排列一下数组,使得最终每个查询结果的和尽可能地大。小蓝想知道相比原数组,所有查询结果的总和最多可以增加多少?
输入格式
- 第一行:包含一个整数 n(表示数组 A 的大小)。
- 第二行:包含 n 个整数 A1,A2,…,An(相邻两个整数之间用空格分隔)。
- 第三行:包含一个整数 m(表示查询的数目)。
- 接下来的 m 行:
- 每行包含两个整数 Li,Ri。
输出格式
输出一行,包含一个整数,表示所有查询结果的总和相比原数组最多可以增加的值。
样例输入
5 1 2 3 4 5 2 1 3 2 5
样例输出
4
样例说明
原数组查询总和:
- 查询 [1,3]:1+2+3=6
- 查询 [2,5]:2+3+4+5=14
- 原总和:6+14=20
重新排列后数组为 (1,4,5,2,3),查询和变为:
- 查询 [1,3]:1+4+5=10
- 查询 [2,5]:4+5+2+3=14
- 新总和:10+14=24
最大增加值:24−20=4。
评测用例规模与约定
| 评测用例 | 限制范围 |
|---|---|
| 30% 的评测用例 | n,m≤50 |
| 50% 的评测用例 | n,m≤500 |
| 70% 的评测用例 | n,m≤5000 |
| 100% 的评测用例 | 1≤n,m≤10^5,1≤Ai≤10^6,1≤Li≤Ri≤10^6 |
运行限制
| 编程语言 | 最大运行时间 | 最大运行内存 |
|---|---|---|
| C++ | 1s | 512M |
| C | 1s | 512M |
| Python3 | 1s | 512M |
| Java | 1s | 512M |
相关文章:
蓝桥杯刷题DAY2:二维前缀和 一维前缀和 差分数组
闪耀的灯光 📌 题目描述 蓝桥公园是一个适合夜间散步的好地方,公园可以被视为由 n m 个矩形区域构成。每个区域都有一盏灯,初始亮度为 a[i][j]。 小蓝可以选择一个大的矩形区域,并按下开关一次,这将使得该区域内每盏…...
网件r7000刷回原厂固件合集测评
《网件R7000路由器刷回原厂固件详解》 网件R7000是一款备受赞誉的高性能无线路由器,其强大的性能和可定制性吸引了许多高级用户。然而,有时候用户可能会尝试第三方固件以提升功能或优化网络性能,但这也可能导致一些问题,如系统不…...
算法随笔_35: 每日温度
上一篇:算法随笔_34: 最后一个单词的长度-CSDN博客 题目描述如下: 给定一个整数数组 temperatures ,表示每天的温度,返回一个数组 answer ,其中 answer[i] 是指对于第 i 天,下一个更高温度出现在几天后。如果气温在这之后都不会升…...
C++初阶 -- 手撕string类(模拟实现string类)
目录 一、string类的成员变量 二、构造函数 2.1 无参版本 2.2 有参版本 2.3 缺省值版本 三、析构函数 四、拷贝构造函数 五、c_str函数 六、operator重载 七、size函数 八、迭代器iterator 8.1 正常版本 8.2 const版本 九、operator[] 9.1 正常版本 9.2 const版…...
【Unity3D】实现2D角色/怪物死亡消散粒子效果
核心:这是一个Unity粒子系统自带的一种功能,可将粒子生成控制在一个Texture图片网格范围内,并且粒子颜色会自动采样图片的像素点颜色,之后则是粒子编辑出消散效果。 Particle System1物体(爆发式随机速度扩散10000个粒…...
构建一个数据分析Agent:提升分析效率的实践
在上一篇文章中,我们讨论了如何构建一个智能客服Agent。今天,我想分享另一个实际项目:如何构建一个数据分析Agent。这个项目源于我们一个金融客户的真实需求 - 提升数据分析效率,加快决策速度。 从分析师的痛点说起 记得和分析师团队交流时的场景: 小张ÿ…...
85.[1] 攻防世界 WEB easyphp
进入靶场 属于代码审计 <?php // 高亮显示当前 PHP 文件的源代码,常用于调试或展示代码 highlight_file(__FILE__);// 初始化两个标志变量,用于后续条件判断 $key1 0; $key2 0;// 从 GET 请求中获取参数 a 和 b $a $_GET[a]; $b $_GET[b];// 检…...
嵌入式硬件篇---CPUGPUTPU
文章目录 第一部分:处理器CPU(中央处理器)1.通用性2.核心数3.缓存4.指令集5.功耗和发热 GPU(图形处理器)1.并行处理2.核心数量3.内存带宽4.专门的应用 TPU(张量处理单元)1.为深度学习定制2.低精…...
pytorch图神经网络处理图结构数据
人工智能例子汇总:AI常见的算法和例子-CSDN博客 图神经网络(Graph Neural Networks,GNNs)是一类能够处理图结构数据的深度学习模型。图结构数据由节点(vertices)和边(edges)组成&a…...
海外问卷调查,最常用到的渠道查有什么特殊之处
市场调研,包含市场调查和市场研究两个步骤,是企业和机构根据经营方向而做出的决策问题,最终通过海外问卷调查中的渠道查,来系统地设计、收集、记录、整理、分析、研究市场反馈的工作流程。 市场调研的工作流程包括:确…...
【Uniapp-Vue3】解决uni-popup弹窗在安全区显示透明问题
我们在使用uni-popup时,如果想要给弹出内容添加一个背景颜色,我们会发现在安全区域是不显示该背景颜色的。 首先根据如下的目录结构找到uni-popup.vue文件 在该文件中找到bottom配置,将红箭头所指代码注释掉 下面的安全区域就没有了ÿ…...
什么是麦克斯韦方程
飞书链接,格式更好,⭐⭐⭐:长尾 - 什么是麦克斯韦方程 基于作者的内容,做了一些扩展(问了 DeepSeek) 最美的公式:你也能懂的麦克斯韦方程组(积分篇) 04通量的引入 用一个…...
webrtc peerconnection_client peerconnection_server 连接失败问题解决 win10 win11
0 常见问题 (1) webrtc peerconnection_client 连接 peerconnection_server 无连接列表 (2)连接导致崩溃debug状态下因为这个断言 RTC_DCHECK_RUN_ON(&capture_checker_); 1 在 peerconnection\client\main.cc 当中 定义类 class CustomSock…...
项目练习:重写若依后端报错cannot be cast to com.xxx.model.LoginUser
文章目录 一、情景说明二、解决办法 一、情景说明 在重写若依后端服务的过程中 使用了Redis存放LoginUser对象数据 那么,有存就有取 在取值的时候,报错 二、解决办法 方法1、在TokenService中修改如下 getLoginUser 方法中:LoginUser u…...
2025年2月1日(Keep calm and code Python)
“Keep calm and code Python” 的意思是 “保持冷静,编写 Python 代码”。 这句话来源于 “Keep Calm and Carry On”(保持冷静,继续前进),这是二战时期英国政府的宣传口号。后来,这种句式被广泛模仿&…...
核心集:DeepCore: A Comprehensive Library for CoresetSelection in Deep Learning
目录 一、TL;DR 二、为什么研究核心集? 三、问题定义和如何做 3.1 问题定义 3.2 业界方法 3.2.1 基于几何的方法 3.2.2 基于不确定性的方法 3.2.3 基于误差/损失的方法 3.2.5 GraNd 和 EL2N 分数 3.2.6 重要性采样 3.2.7 基于决策边界的办法 …...
Hot100之矩阵
73矩阵置零 题目 思路解析 收集0位置所在的行和列 然后该行全部初始化为0 该列全部初始化为0 代码 class Solution {public void setZeroes(int[][] matrix) {int m matrix.length;int n matrix[0].length;List<Integer> list1 new ArrayList<>();List<…...
可视化相机pose colmap形式的相机内参外参
目录 内参外参转换 可视化相机pose colmap形式的相机内参外参 内参外参转换 def visualize_cameras(cameras, images):fig plt.figure()ax fig.add_subplot(111, projection3d)for image_id, image_data in images.items():qvec image_data[qvec]tvec image_data[tvec]#…...
第十二章 I 开头的术语
文章目录 第十二章 I 开头的术语以 I 开头的术语被识别 (identified by)识别关系 (identifying relationship)身份 (identity)idkey隐式全局引用 (implicit global reference)隐含命名空间 (implied namespace)包含文件 (include file)传入锁 (incoming lock) 索引 (index)索引…...
C# 类与对象详解
.NET学习资料 .NET学习资料 .NET学习资料 在 C# 编程中,类与对象是面向对象编程的核心概念。它们让开发者能够将数据和操作数据的方法封装在一起,从而构建出模块化、可维护且易于扩展的程序。下面将详细介绍 C# 中类与对象的相关知识。 一、类的定义 …...
Windsurf cursor vscode+cline 与Python快速开发指南
Windsurf简介 Windsurf是由Codeium推出的全球首个基于AI Flow范式的智能IDE,它通过强大的AI助手功能,显著提升开发效率。Windsurf集成了先进的代码补全、智能重构、代码生成等功能,特别适合Python开发者使用。 Python环境配置 1. Conda安装…...
深度解析:网站快速收录与服务器性能的关系
本文转自:百万收录网 原文链接:https://www.baiwanshoulu.com/37.html 网站快速收录与服务器性能之间存在着密切的关系。服务器作为网站运行的基础设施,其性能直接影响到搜索引擎对网站的抓取效率和收录速度。以下是对这一关系的深度解析&am…...
Linux tr 命令使用详解
简介 tr (translate)命令用于在 Linux 中翻译或删除输入流(通常是 stdin )中的字符。它主要用于文本操作,并且可以作为转换或删除文本文件或流中的特定字符的方便工具。 基本语法 tr [OPTION] [SET1] [SET2]SET1&am…...
数据库内存与Buffer Pool
数据库内存与Buffer Pool 文章目录 数据库内存与Buffer Pool一:MySQL内存结构1:MySQL工作组件2:工作线程的本地内存3:共享内存区域4:存储引擎缓冲区 二:InnoDB的核心:Buffer Pool1:数…...
程序员学英文之At the Airport Customs
Dialogue-1 Making Airline Reservation预定机票 My cousin works for Xiamen Airlines. 我表哥在厦航上班。I’d like to book an air ticket. 我想预定一张机票。Don’t judge a book by its cover. 不要以貌取人。I’d like to book / re-serve a table for 10. 我想预定一…...
Redis代金卷(优惠卷)秒杀案例-单应用版
优惠卷表:优惠卷基本信息,优惠金额,使用规则 包含普通优惠卷和特价优惠卷(秒杀卷) 优惠卷的库存表:优惠卷的库存,开始抢购时间,结束抢购时间.只有特价优惠卷(秒杀卷)才需要填写这些信息 优惠卷订单表 卷的表里已经有一条普通优惠卷记录 下面首先新增一条秒杀优惠卷记录 { &quo…...
51单片机 01 LED
一、点亮一个LED 在STC-ISP中单片机型号选择 STC89C52RC/LE52RC;如果没有找到hex文件(在objects文件夹下),在keil中options for target-output- 勾选 create hex file。 如果要修改编程 :重新编译-下载/编程-单片机重…...
MusicFree-开源的第三方音乐在线播放和下载工具, 支持歌单导入[对标落雪音乐]
MusicFree 链接:https://pan.xunlei.com/s/VOI0RrVLTTWE9kkpt0U7ofGBA1?pwd4ei6#...
消息队列篇--原理篇--常见消息队列总结(RabbitMQ,Kafka,ActiveMQ,RocketMQ,Pulsar)
1、RabbitMQ 特点: AMQP协议:RabbitMQ是基于AMQP(高级消息队列协议)构建的,支持多种消息传递模式,如发布/订阅、路由、RPC等。多语言支持:支持多种编程语言的客户端库,包括Java、P…...
nacos 配置管理、 配置热更新、 动态路由
文章目录 配置管理引入jar包添加 bootstrap.yaml 文件配置在application.yaml 中添加自定义信息nacos 配置信息 配置热更新采用第一种配置根据服务名确定配置文件根据后缀确定配置文件 动态路由DynamicRouteLoaderNacosConfigManagerRouteDefinitionWriter 路由配置 配置管理 …...

