2024.7.10刷题记录

目录

一、1001-[NOIP2007]字符串的展开

二、1003-[NOIP2010]机器翻译

三、853. 有边数限制的最短路 - AcWing题库

bellman_ford算法

四、851. spfa求最短路 - AcWing题库

spfa算法


一、1001-[NOIP2007]字符串的展开

p1, p2, p3 = map(int, input().split())
st = input()
n = len(st)
s = ''for i, c in enumerate(st):if c == '-' and 1 <= i < n - 1:a, b = st[i - 1], st[i + 1]if a >= b or not ((a.isalpha() and b.isalpha()) or (a.isdigit() and b.isdigit())):z = '-'elif p1 == 3:z = '*' * (ord(b) - ord(a) - 1) * p2else:z = ''for i in range(ord(a) + 1, ord(b)):z += chr(i) * p2if p3 == 2: z = z[::-1]z = z.upper() if p1 == 2 else z.lower()s += zelse:s += c
print(s)

二、1003-[NOIP2010]机器翻译

from collections import dequeR = lambda: map(int, input().split())
m, n = R()
nums = list(R())q = deque()    # 队列
len_q = 0    # 队列长度
N = 1010
st = [False for _ in range(N)]    # 标记是否放入内存ans = 0
for x in nums:if not st[x]:# 没在内存if len_q == m:# 内存超限制,移出内存a = q.popleft()st[a] = Falselen_q -= 1# 将外存单词放入内存st[x] = Trueq.append(x)len_q += 1ans += 1    # 查词次数加一
print(ans)

三、853. 有边数限制的最短路 - AcWing题库

bellman_ford算法

g = []
N = 510
dist = [float('inf') for _ in range(N)]R = lambda: map(int, input().split())
n, m, k = R()
for _ in range(m):g.append(list(R()))def bellman_ford():dist[1] = 0for i in range(k):backup = dist.copy()for j in range(m):a, b, w = g[j]dist[b] = min(dist[b], backup[a] + w)if backup == dist:# 无法再更新了breakreturn dist[n]t = bellman_ford()
print("impossible" if t > int(5e6) + 100 else t)

四、851. spfa求最短路 - AcWing题库

spfa算法

from collections import deque
# 稀疏图用邻接表
N = int(1e5) + 10
# 头节点初始化为-1、值为最大值
h = [-1] * N; e = [0] * N; ne = [0] * N; val = [0] * N; idx = 0
st = [False] * N
inf = float('inf')
dist = [inf for _ in range(N)]     # 初始化成无穷大
q = deque()def add(x, y, z):global idxe[idx] = yval[idx] = zne[idx] = h[x]h[x] = idxidx += 1R = lambda: map(int, input().split())
n, m = R()
for _ in range(m):x, y, z = R()add(x, y, z)def spfa():dist[1] = 0# st[1] = Trueq.append(1)while q:t = q.popleft()st[t] = False   # 标记是否在队列里面# 更新其他节点i = h[t]while i != -1:j = e[i]if dist[j] > dist[t] + val[i]:# 值变小dist[j] = dist[t] + val[i]if not st[j]:# 没在队列里,避免多次不必要更新q.append(j)st[j] = Truei = ne[i]return dist[n]
ans = spfa()
print('impossible' if ans == inf else ans)

感谢你看到这里!一起加油吧!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/870047.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

qt 读写json格式的配置文件

要点 QJsonObject QJsonDocumentQFile file(fileName);file.write(jsonDoc.toJson(QJsonDocument::Indented)); // 缩进格式化输出QByteArray jsonData file.readAll(); 在 Qt 中&#xff0c;读写 JSON 格式的配置文件通常使用 QJsonDocument、QJsonObject、QJsonArray 和 Q…

云开发技术的壁纸小程序源码,无需服务期无需域名

1、本款小程序为云开发版本&#xff0c;不需要服务器域名 2、文件内有图文搭建教程&#xff0c;小白也不用担心不会搭建。 3、本程序反应速度极快&#xff0c;拥有用户投稿、积分系统帮助各位老板更多盈利。 4、独家动态壁纸在线下载&#xff0c;给用户更多的选择 5、最新版套图…

Open3D 点云配准精度评价指标-RMSE

目录 一、概述 1.1RMSE的计算方法 1.2RMSE的评价标准 二、代码实现 三、实现效果 3.1原始点云 3.2计算数据 一、概述 均方根误差(RMSE, Root Mean Squared Error)是衡量两个点云之间平均误差的一个常用指标。它通过计算匹配点对之间距离的平方和的平方根,来…

有必要找第三方软件测评公司吗?如何选择靠谱软件测评机构?

软件测试是确保软件质量的重要环节&#xff0c;而在进行软件测试时&#xff0c;是否有必要找第三方软件测评公司呢?第三方软件测评公司是指独立于软件开发公司和用户之间的中立机构&#xff0c;专门从事软件测试和测评工作。与自身开发团队或内部测试团队相比&#xff0c;选择…

计算机的错误计算(二十七)

摘要 介绍错数&#xff1a;任给一个单变元函数&#xff0c;当自变量被截断时&#xff0c;函数值中含有的错误的有效数字个数&#xff0c;并给出其计算方法。 首先&#xff0c;从字面上看&#xff0c;错数表示错误的有效数字个数。 下面从一个略显粗糙的化简过程&#xff0c;推…

每天一个数据分析题(四百二十)- 一元线性回归模型

现在通过参数估计得到一个一元线性回归模型为y 3x4&#xff0c;在回归系数检验中下列说法错误的是&#xff08; &#xff09; A. 检验统计量是t统计量 B. 原假设是β13 C. 若拒绝原假设&#xff0c;就认为自变量与因变量存在显著的线性关系 D. 可以用P值与显著性水平比较结…

网络安全防御【防火墙安全策略用户认证综合实验】

目录 一、实验拓扑图 二、实验要求 三、实验思路 四、实验步骤 1、打开ensp防火墙的web服务&#xff08;带内管理的工作模式&#xff09; 2、在FW1的web网页中网络相关配置 3、交换机LSW6&#xff08;总公司&#xff09;的相关配置&#xff1a; 4、路由器相关接口配置&a…

多线程问题

什么是线程 线程是cpu调度和执行的单位&#xff0c;一个程序的运行伴随着的是一个进程的执行&#xff0c;而一个进程是由一个或多个线程来完成的&#xff0c;通过cpu调度资源在很短时间切换主线程和子线程并行&#xff0c;交替执行来做到看似多个线程同时进行的状态&#xff0…

java入门-告别C进入java世界

目标 java体系 java开发环境 helloworld java语法 java体系 java开发环境 安装JDK JDK&#xff1a; Java Developement Kit 配置jdk 为什么需要配置 操作系统找不到此程序 操作系统PATH PATH C:\Users\49354>echo %PATH% C:\Program Files (x86)\VMware\VMware Works…

windows信息收集和提权

目录 手动收集 工具收集 windows本地内核提权 本地提权 根据windows去找需要的exp进行利用 提权后结合mimikatz使用 msf提权 简单提权 生成后门 上线 BypassUAC绕过UAC提权 msf带的bypassuac模块可以尝试提权 Bypassuac提权命令操作 提权成功 ​local_exploi…

[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:841)

pip安装python库时报错问题解决 报错&#xff1a;[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:841) 解决&#xff1a; pip --trusted-host pypi.python.org install -r packagename&#xff08;包名&#xff09;

C# IOC容器、依赖注入和控制反转

控制反转&#xff08;Inversion of Control, IoC&#xff09; 定义&#xff1a;控制反转是一种设计原则&#xff0c;它反转了传统编程中的控制流程。在传统的编程模式中&#xff0c;组件之间的依赖关系是由组件自身在内部创建和维护的。而在控制反转模式中&#xff0c;这种依赖…

linux编写驱动程序常用API

在Linux设备驱动开发中&#xff0c;有许多常用的API&#xff0c;这些API提供了与内核和其他驱动程序交互的功能。以下是一些常见的Linux设备驱动开发API&#xff1a; 1. 设备注册与注销 register_chrdev_region(): 注册一个字符设备号范围。alloc_chrdev_region(): 动态分配一…

特斯拉的人形机器人最新展示,穿戴遥操作示教的机器人学习!

在机器人领域&#xff0c;特斯拉的人形机器人一直备受关注。2021 年&#xff0c;在「特斯拉 AI 日」上&#xff0c;马斯克发布了特斯拉的通用机器人计划&#xff0c;并用图片展示了人形机器人 Tesla Bot 的大致形态。但当时的 Tesla Bot 只是个概念&#xff0c;动作展示部分是由…

VSCode升级后不能打开在MacOS系统上

VSCode 在MacOS无法打开 版本 VSCode version: 1.91.0 (x64) 错误信息&#xff1a; MacBook-Pro ~ % /Users/mac/Downloads/FirefoxDownloads/Visual\ Studio\ Code.app/Contents/MacOS/Electron ; exit; [0710/142747.971951:ERROR:crash_report_database_mac.mm(753)] op…

西安明德理工学院师生莅临泰迪智能科技开展参观见习活动

为进一步深化校企合作&#xff0c;落实高校应用型人才培养。7月8日&#xff0c;西安明德理工学院与广东泰迪智能科技股份有限公司联合开展学生企业见习活动。西安明德理工学院金融产业学院副院长刘敏、金融学专业负责人张莉萍、金融学专业教师曹艳飞、赵浚妤、泰迪智能科技董事…

TCP中的2MSL详解

TCP中的2MSL时间 2MSL&#xff08;Maximum Segment Lifetime&#xff09;时间是TCP协议中一个非常重要的参数。MSL是一个TCP段在网络中可以存活的最长时间&#xff0c;2MSL就是两倍的这个时间。在TCP连接终止时&#xff0c;连接的两个端点需要等待2MSL时间&#xff0c;以确保所…

CinemachineBrain的属性简介

CinemachineBrain的属性简介 CinemachineBrain是Unity Cinemachine的核心组件&#xff0c;它和Camera组件挂载在一起&#xff0c;监控场景中所有的virtual camera。CinemachineBrain在inspector中暴露的属性如下&#xff1a; Live Camera和Live Blend分别表示当前active的virtu…

python-26-零基础自学python-如何创建文件、读取数据、处理多个文件及程序异常处理等

学习内容&#xff1a;《python编程&#xff1a;从入门到实践》第二版第10章 知识点&#xff1a; 程序异常如何处理&#xff1f;try-except-else 多个文件处理 创建文件&#xff1a;在文件中储存数据 练习内容&#xff1a; 练习10-8&#xff1a;猫和狗 创建文件cats.txt和…

YOLOv10改进 | Conv篇 | CVPR2024最新DynamicConv替换下采样(解决低FLOPs陷阱)

一、本文介绍 本文给大家带来的改进机制是CVPR2024的最新改进机制DynamicConv其是CVPR2024的最新改进机制&#xff0c;这个论文中介绍了一个名为ParameterNet的新型设计原则&#xff0c;它旨在在大规模视觉预训练模型中增加参数数量&#xff0c;同时尽量不增加浮点运算&#x…