news 2026/7/13 10:36:40

版本整理问题(牛客:REALHW167)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
版本整理问题(牛客:REALHW167)

一、问题描述

二、解题思路

# 1.拆分版本字符串 # 每行用空格分割: # 第一部分是主版本字符串(如1.0.2),按.切分转整数列表用于比较; # 如果有第二部分,说明是测试版,提取 beta 后面的数字;没有则是正式版。 # 2.自定义排序 key(核心) # key 是一个元组,排序时会从左到右依次对比: # (主版本整数列表, 是否正式版标记, beta数字) # 是否正式版:测试版填1,正式版填2 → 主版本相同时测试版排在前面; # 测试版存 beta 后的数字,正式版随便填大数(不会用到)。 # 3.用sorted配合自定义 key 排序,最后逐行输出原字符串。 n = int(input()) versions = [] for _ in range(n): s = input().strip() # 例:s = "1.0.2 beta3" # s.split() → 用空格切开,得到: # parts = ["1.0.2", "beta3"] # parts [0] = "1.0.2" → 主版本号 # parts [1] = "beta3" → beta 测试标记 parts = s.split() main_str = parts[0] # 处理主版本,转整数列表 main = list(map(int,main_str.split('.'))) if len(parts) == 2: # 测试版 betaX beta_num = int(parts[1][4:]) # key: (主版本列表, 1=测试版, beta数字) key = (main,1,beta_num) else: # 正式版 key = (main,2,9999) versions.append((key, s)) # 按key升序排序 versions.sort() # 输出原字符串 for item in versions: print(item[1])
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/13 10:35:36

数字电源设计:基于PIC18F46K20与171010550的DC-DC降压方案

1. 项目背景与核心器件解析在工业控制和嵌入式系统领域,电源管理一直是决定系统稳定性的关键因素。传统模拟控制的DC-DC降压方案虽然成熟,但存在调节不灵活、参数固化等缺陷。而采用数字控制方案,特别是基于MCU的可编程电源系统,正…

作者头像 李华
网站建设 2026/7/13 10:35:03

TLA2518与PIC18F87J10的硬件协同设计与ADC优化策略

1. TLA2518与PIC18F87J10的硬件协同设计1.1 芯片选型依据解析在工业测量和嵌入式系统中,模拟信号到数字信号的可靠转换是核心需求。TLA2518作为TI推出的12位精度SAR型ADC,其1MSPS采样率和8通道多路复用特性,特别适合中等精度要求的分布式采集…

作者头像 李华
网站建设 2026/7/13 10:35:01

MAX77654与PIC18F4553电源管理方案设计

1. 项目背景与核心需求 在嵌入式系统开发中,电源管理设计往往是最容易被忽视却至关重要的环节。作为一名经历过多个电池供电项目的老工程师,我深刻理解一套优秀的电源方案能带来多大的系统提升。这次我们要探讨的是基于MAX77654 PMIC和PIC18F4553微控制器…

作者头像 李华
网站建设 2026/7/13 10:31:31

Matlab实操包:用小波变换清理脉搏信号并精准抓取基波频率

本文还有配套的精品资源,点击获取 简介:一套即装即用的Matlab脉搏信号处理工具集,专注解决真实采集数据中的噪声干扰和基波识别问题。包含两个主运行脚本Runme1.m和Runme2.m,适配Matlab 2021a及以上版本;内置真实脉…

作者头像 李华