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

蓝桥杯刷题DAY3:Horner 法则 前缀和+差分数组 贪心

所谓刷题,最重要的就是细心

📌 题目描述

X 进制 中,每一数位的进制不固定。例如:

  • 最低位 采用 2 进制
  • 第二位 采用 10 进制
  • 第三位 采用 8 进制

X 进制数 321 的十进制值为:

3×(10×8)+2×8+1=65

现在,给定两个以 X 进制表示的整数 A 和 B,它们的每一数位的进制上限为 N 进制,下限为 2 进制,你需要计算:

A−B

十进制下的最小可能值,并输出 模 10^9+7 后的结果


📌 输入格式

  • 第一行:一个正整数 N(表示最高进制)。
  • 第二行:一个正整数 Ma(表示 X 进制数 A 的位数)。
  • 第三行Ma 个用空格分隔的整数(表示 A 的各个位,从 高位到低位)。
  • 第四行:一个正整数 Mb(表示 X 进制数 B 的位数)。
  • 第五行Mb 个用空格分隔的整数(表示 B 的各个位,从 高位到低位)。

📌 输出格式

  • 输出 一个整数,表示 A - B 的最小可能值,转换为十进制后模 10^9+7 的结果。

📌 输入输出示例

输入

11 3 10 4 0 3 1 2 0

输出

94


📌 题目说明

  1. 你需要 找到最小的进制分配方案,使得 A - B 最小
    • 每一位的进制必须 ≥ max(1, A[i], B[i]) + 1(确保 A 和 B 的每一位都是合法的)。
    • 每一位的进制不能小于 2(最小是二进制)。
    • 最优解 是选择 尽可能小的进制,这样计算出的 A 和 B 的十进制值最小,从而 A - B 也最小。
  2. 进制计算方式
    • 例如,若 A = [10, 4, 0]B = [1, 2, 0]
    • 进制可以选择:d = [11, 5, 2]
    • 计算: A10=10×(5×2)+4×2+0=108  B10​=1×(5×2)+2×2+0=14
    • 最终 A - B = 108 - 14 = 94

📌 约束条件

  • 对于 30% 的数据
    • N≤10
    • 1≤Ma,Mb≤8
  • 对于 100% 的数据
    • 2≤N≤1000
    • 1≤Ma,Mb≤100000
    • 保证 A ≥ B
  • 运行限制
    • C++ / C / Java / Python3
    • 最大运行时间:1s
    • 最大运行内存:256MB
import os
import sys# 请在此输入您的代码if __name__=="__main__":mod = 1000000007N=int(input())Ma=int(input())A= list(map(int,input().split()))Mb=int(input())B= list(map(int,input().split()))for i in range(Ma-Mb):B.insert(0,0)result=0for i in range(Ma):if i==Ma-1:result= (1)*(result+A[i]-B[i])%modelse:result= (max(1,A[i+1],B[i+1])+1)*(result+A[i]-B[i])%modprint(result%mod)

字符迁移【算法赛】

题目描述
小蓝最近获得了一个长度为 N 的字符串 S,他对它爱不释手。
小桥为了考验小蓝对字符串的处理能力,决定给他提出一个挑战:她会进行 Q 次操作,每次操作给定三个整数 l, r, k,将 S 的第 l 个字符到第 r 个字符都循环右移 k 次。

字符右移的含义为:按照字母表顺序进行移动,例如:

'a' 右移 1 次变为 'b';
'b' 右移 2 次变为 'd';
特别地,'z' 右移 1 次变回 'a'。
操作完成后,请输出字符串 S 的最终结果。

输入格式
第一行输入两个整数 N, Q
(1 ≤ N, Q ≤ 2×10<sup>5</sup>),表示字符串 S 的长度以及操作次数。

第二行输入一个字符串 S,保证 S 只包含小写字母。

接下来 Q 行,每行输入三个整数 l, r, k
(1 ≤ l ≤ r ≤ N, 1 ≤ k ≤ 10<sup>9</sup>),表示一次操作:将 S 中第 l 个字符到第 r 个字符循环右移 k 次。

输出格式
输出一个字符串,表示操作完成后的 S。

输入样例
5 3
abcde
1 5 3
1 2 4
2 5 3
输出样例
hlijk
运行限制
Python3:最大运行时间 3s,最大运行内存 256M

import os
import sys# 请在此输入您的代码if __name__=="__main__":N,Q=map(int,input().split())S = list(input())n=len(S)d=[0]*(n+1)s=[0]*nfor i in range(Q):l,r,k=map(int,input().split())d[l-1]+=kd[r]-=kfor i in range(n):if i==0:s[i]=d[i]else:s[i]=s[i-1]+d[i]for i in range(n):S[i]=  chr(( s[i] +( ord(S[i]) - ord('a') ))%26 + ord('a') )print("".join(S))

食堂 

题目描述

S 学校里一共有
a2​ 个两人寝、
a3​ 个三人寝、
a4​ 个四人寝。食堂里有
b4 个四人桌和
b6​ 个六人桌。学校想要安排学生们在食堂用餐,并且满足每个寝室里的同学都在同一桌就坐。请问这个食堂最多同时满足多少同学用餐?


输入格式

采用多组数据输入。
输入共 q+1 行:

  • 第一行为一个正整数 q,表示数据组数。

  • 后面 q 行,每行五个非负整数 a2,a3,a4,b4,b6,表示一组数据。


输出格式

输出共 q 行,每行一个整数,表示对应输入数据的答案。


样例输入

2  
3 0 1 0 1  
0 2 2 1 1  

样例输出

6  
10  

样例说明

  1. 第一组数据

    • 仅有一个六人桌,最多安排三个两人寝的同学就餐。

    • 答案为 2+2+2=6。

  2. 第二组数据

    • 用一个六人桌安排两个三人寝的同学,用一个四人桌安排一个四人寝的同学。

    • 答案为 (3+3)+4=10。


评测用例规模与约定

  1. 20% 的评测用例

    • 保证 a2+a3+a4≤8。

  2. 100% 的评测用例

    • 保证 q≤100,b4+b6≤a2+a3+a4≤100。


运行限制

语言最大运行时间最大运行内存
C++1s256M
C1s256M
Java3s512M
Python310s512M

import os
import sys# 请在此输入您的代码if __name__=="__main__":q= int(input())for i in range(q):a2,a3,a4,b4,b6=map(int,input().split())total=0tmp=min(a4,b4)total+=tmp*4a4-=tmpb4-=tmptmp=min(a2,a4,b6)total+=tmp*6a2-=tmpa4-=tmpb6-=tmptmp=min(a3//2,b6)total+=tmp*6a3-=tmp*2b6-=tmptmp=min(a2//2,b4)total+=tmp*4a2-=tmp*2b4-=tmptmp=min(a2//3,b6)total+=tmp*6a2-=tmp*3b6-=tmptmp=min(a2,a3,b6)total+=tmp*5a2-=tmpa3-=tmpb6-=tmptmp=min(a4,b6)total+=tmp*4a4-=tmpb6-=tmptmp=min(a2//2,b6)total+=tmp*4a2-=tmp*2b6-=tmptmp=min(a3,b4)total+=tmp*3a3-=tmpb4-=tmptmp=min(a3,b6)total+=tmp*3a3-=tmpb6-=tmptmp=min(a2,b4)total+=tmp*2a2-=tmpb4-=tmptmp=min(a2,b6)total+=tmp*2a2-=tmpb6-=tmpprint(total)

相关文章:

蓝桥杯刷题DAY3:Horner 法则 前缀和+差分数组 贪心

所谓刷题&#xff0c;最重要的就是细心 &#x1f4cc; 题目描述 在 X 进制 中&#xff0c;每一数位的进制不固定。例如&#xff1a; 最低位 采用 2 进制&#xff0c;第二位 采用 10 进制&#xff0c;第三位 采用 8 进制&#xff0c; 则 X 进制数 321 的十进制值为&#xff…...

java项目验证码登录

1.依赖 导入hutool工具包用于创建验证码 <dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.5.2</version></dependency> 2.测试 生成一个验证码图片&#xff08;生成的图片浏览器可…...

手写MVVM框架-环境搭建

项目使用 webpack 进行进行构建&#xff0c;初始化步骤如下: 1.创建npm项目执行npm init 一直下一步就行 2.安装webpack、webpack-cli、webpack-dev-server&#xff0c;html-webpack-plugin npm i -D webpack webpack-cli webpack-dev-server html-webpack-plugin 3.配置webpac…...

2025年2月2日(网络编程 tcp)

tcp 循环服务 import socketdef main():# 创建 socket# 绑定tcp_server socket.socket(socket.AF_INET, socket.SOCK_STREAM)tcp_server.bind(("", 8080))# socket 转变为被动tcp_server.listen(128)while True:# 产生专门为链接进来的客户端服务的 socketprint(&qu…...

【Docker项目实战】使用Docker部署MinIO对象存储(详细教程)

【Docker项目实战】使用Docker部署MinIO对象存储 前言一、 MinIO介绍1.1 MinIO简介1.2 主要特点1.3 主要使用场景二、本次实践规划2.1 本地环境规划2.2 本次实践介绍三、本地环境检查3.1 检查Docker服务状态3.2 检查Docker版本3.3 检查docker compose 版本四、下载MinIO镜像五、…...

使用ollama本地部署Deepseek r1

1、下载ollama 在浏览器地址输入&#xff1a;https://ollama.com/ 选择windows版本的下载 2、安装ollama 3、运行ollama 安装完成后&#xff0c;打开命令行工具win r 在命令行输入&#xff1a;ollama 4、使用ollama下载并部署Deepseed r1 在ollama网站&#xff0c;下载…...

Unity飞行代码 超仿真 保姆级教程

本文使用Rigidbody控制飞机&#xff0c;基本不会穿模。 效果 飞行效果 这是一条优雅的广告 如果你也在开发飞机大战等类型的飞行游戏&#xff0c;欢迎在主页搜索博文并参考。 搜索词&#xff1a;Unity游戏(Assault空对地打击)开发。 脚本编写 首先是完整代码。 using System.Co…...

DeepSeek蒸馏模型:轻量化AI的演进与突破

目录 引言 一、知识蒸馏的技术逻辑与DeepSeek的实践 1.1 知识蒸馏的核心思想 1.2 DeepSeek的蒸馏架构设计 二、DeepSeek蒸馏模型的性能优势 2.1 效率与成本的革命性提升 2.2 性能保留的突破 2.3 场景适应性的扩展 三、应用场景与落地实践 3.1 智能客服系统的升级 3.2…...

使用 sunshine+moonlight 配置串流服务无法使用特殊键

最近了解到串流技术&#xff0c;使用的方案是 sunshine 为串流服务端&#xff0c;moonlight 为客户端&#xff0c;分别在 ipad&#xff0c;android&#xff0c;tv 端安装。 存在的问题 不管说什么平台都会有特殊键无法使用的问题&#xff0c;最初我发现在安卓电视&#xff0c…...

5.角色基础移动

能帮到你的话&#xff0c;就给个赞吧 &#x1f618; 文章目录 角色的xyz轴与移动方向拌合输入轴值add movement inputget controller rotationget right vectorget forward vector 发现模型的旋转改变后&#xff0c;xyz轴也会改变&#xff0c;所以需要旋转值来计算xyz轴方向。 …...

单细胞-第四节 多样本数据分析,下游画图

文件在单细胞\5_GC_py\1_single_cell\2_plots.Rmd 1.细胞数量条形图 rm(list ls()) library(Seurat) load("seu.obj.Rdata")dat as.data.frame(table(Idents(seu.obj))) dat$label paste(dat$Var1,dat$Freq,sep ":") head(dat) library(ggplot2) lib…...

Linux的循环,bash的循环

Linux的循环,bash的循环 在 Linux 系统中&#xff0c;Bash 循环是最常用的循环实现方式&#xff08;Bash 是 Linux 默认的 Shell&#xff09;&#xff0c;但广义上“Linux 的循环”可能涉及其他 Shell 或编程语言的循环结构。以下是 Bash 循环的详细解析及其在 Linux 环境中的…...

【DeepSeek开发】Python实现股票数据可视化

代码&#xff1a; Github&#xff1a;Python实现股票数据可视化代码https://github.com/magolan2000/Data-visualization/tree/master 软件环境&#xff1a;PyCharm 2022.3.1 数据来源&#xff1a;akshare 最近DeepSeek可谓是热度不断&#xff0c;因此想评判一下DeepSeek的编程…...

华为小米vivo向上,苹果荣耀OPPO向下

日前&#xff0c;Counterpoint发布的手机销量月度报告显示&#xff0c;中国智能手机销量在2024年第四季度同比下降3.2%&#xff0c;成为2024年唯一出现同比下滑的季度。而对于各大智能手机品牌来说&#xff0c;他们的市场份额和格局也在悄然发生变化。 华为逆势向上 在2024年第…...

毕业设计:基于深度学习的高压线周边障碍物自动识别与监测系统

目录 前言 课题背景和意义 实现技术思路 一、算法理论基础 1.1 卷积神经网络 1.2 目标检测算法 1.3 注意力机制 二、 数据集 2.1 数据采集 2.2 数据标注 三、实验及结果分析 3.1 实验环境搭建 3.2 模型训练 3.2 结果分析 最后 前言 &#x1f4c5;大四是整个大学…...

el-table表格点击单元格实现编辑

使用 el-table 和 el-table-column 创建表格。在单元格的默认插槽中&#xff0c;使用 div 显示文本内容&#xff0c;单击时触发编辑功能。使用 el-input 组件在单元格中显示编辑框。data() 方法中定义了 tableData&#xff0c;tabClickIndex: null,tabClickLabel: ,用于判断是否…...

数据结构:时间复杂度

文章目录 为什么需要时间复杂度分析&#xff1f;一、大O表示法&#xff1a;复杂度的语言1.1 什么是大O&#xff1f;1.2 常见复杂度速查表 二、实战分析&#xff1a;解剖C语言代码2.1 循环结构的三重境界单层循环&#xff1a;线性时间双重循环&#xff1a;平方时间动态边界循环&…...

SPI(Serial Peripheral Interface)串行外围设备接口

SPI概述&#xff1a; SPI协议最初由Motorola公司&#xff08;现为NXP Semiconductors的一部分&#xff09;在20世纪80年代中期开发。最初是为了在其68000系列微控制器中实现高速、高效的串行通信。该协议旨在简化微控制器与外围设备之间的数据传输。 1980年代&#xff1a;SPI协…...

Java 8 Stream API

通过 Stream.of 方法直接传入多个元素构成一个流 String[] arr {“a”, “b”, “c”}; Stream.of(arr).forEach(System.out::println); Stream.of(“a”, “b”, “c”).forEach(System.out::println); Stream.of(1, 2, “a”).map(item -> item.getClass().getName()…...

亚博microros小车-原生ubuntu支持系列:21 颜色追踪

背景知识 这个测试例子用到了很多opencv的函数&#xff0c;举个例子。 #cv2.findContours函数来找到二值图像中的轮廓。#参数&#xff1a;#参数1&#xff1a;输 入的二值图像。通常是经过阈值处理后的图像&#xff0c;例如在颜色过滤之后生成的掩码。#参数2(cv2.RETR_EXTERNA…...

大数据学习栈记——Neo4j的安装与使用

本文介绍图数据库Neofj的安装与使用&#xff0c;操作系统&#xff1a;Ubuntu24.04&#xff0c;Neofj版本&#xff1a;2025.04.0。 Apt安装 Neofj可以进行官网安装&#xff1a;Neo4j Deployment Center - Graph Database & Analytics 我这里安装是添加软件源的方法 最新版…...

(二)原型模式

原型的功能是将一个已经存在的对象作为源目标,其余对象都是通过这个源目标创建。发挥复制的作用就是原型模式的核心思想。 一、源型模式的定义 原型模式是指第二次创建对象可以通过复制已经存在的原型对象来实现,忽略对象创建过程中的其它细节。 📌 核心特点: 避免重复初…...

苍穹外卖--缓存菜品

1.问题说明 用户端小程序展示的菜品数据都是通过查询数据库获得&#xff0c;如果用户端访问量比较大&#xff0c;数据库访问压力随之增大 2.实现思路 通过Redis来缓存菜品数据&#xff0c;减少数据库查询操作。 缓存逻辑分析&#xff1a; ①每个分类下的菜品保持一份缓存数据…...

相机从app启动流程

一、流程框架图 二、具体流程分析 1、得到cameralist和对应的静态信息 目录如下: 重点代码分析: 启动相机前,先要通过getCameraIdList获取camera的个数以及id,然后可以通过getCameraCharacteristics获取对应id camera的capabilities(静态信息)进行一些openCamera前的…...

论文浅尝 | 基于判别指令微调生成式大语言模型的知识图谱补全方法(ISWC2024)

笔记整理&#xff1a;刘治强&#xff0c;浙江大学硕士生&#xff0c;研究方向为知识图谱表示学习&#xff0c;大语言模型 论文链接&#xff1a;http://arxiv.org/abs/2407.16127 发表会议&#xff1a;ISWC 2024 1. 动机 传统的知识图谱补全&#xff08;KGC&#xff09;模型通过…...

Psychopy音频的使用

Psychopy音频的使用 本文主要解决以下问题&#xff1a; 指定音频引擎与设备&#xff1b;播放音频文件 本文所使用的环境&#xff1a; Python3.10 numpy2.2.6 psychopy2025.1.1 psychtoolbox3.0.19.14 一、音频配置 Psychopy文档链接为Sound - for audio playback — Psy…...

uniapp微信小程序视频实时流+pc端预览方案

方案类型技术实现是否免费优点缺点适用场景延迟范围开发复杂度​WebSocket图片帧​定时拍照Base64传输✅ 完全免费无需服务器 纯前端实现高延迟高流量 帧率极低个人demo测试 超低频监控500ms-2s⭐⭐​RTMP推流​TRTC/即构SDK推流❌ 付费方案 &#xff08;部分有免费额度&#x…...

【论文阅读28】-CNN-BiLSTM-Attention-(2024)

本文把滑坡位移序列拆开、筛优质因子&#xff0c;再用 CNN-BiLSTM-Attention 来动态预测每个子序列&#xff0c;最后重构出总位移&#xff0c;预测效果超越传统模型。 文章目录 1 引言2 方法2.1 位移时间序列加性模型2.2 变分模态分解 (VMD) 具体步骤2.3.1 样本熵&#xff08;S…...

css3笔记 (1) 自用

outline: none 用于移除元素获得焦点时默认的轮廓线 broder:0 用于移除边框 font-size&#xff1a;0 用于设置字体不显示 list-style: none 消除<li> 标签默认样式 margin: xx auto 版心居中 width:100% 通栏 vertical-align 作用于行内元素 / 表格单元格&#xff…...

RNN避坑指南:从数学推导到LSTM/GRU工业级部署实战流程

本文较长&#xff0c;建议点赞收藏&#xff0c;以免遗失。更多AI大模型应用开发学习视频及资料&#xff0c;尽在聚客AI学院。 本文全面剖析RNN核心原理&#xff0c;深入讲解梯度消失/爆炸问题&#xff0c;并通过LSTM/GRU结构实现解决方案&#xff0c;提供时间序列预测和文本生成…...