华为OD试题二(文件目录大小、相对开音节、找最小数)
1. 文件目录大小
题目描述:
一个文件目录的数据格式为:目录id,本目录中文件大小,(子目录id
列表)。其中目录id全局唯一,取值范围[1,200],本目录中文件大小范
围[1,1000],子目录id列表个数[0,10]例如:1 20 (2,3)表示目录1中文件总大小是20,有两个子目录,id分
别是2和3现在输入一个文件系统中所有目录信息,以及待查询的目录 id ,返
回这个目录和及该目录所有子目录的大小之和。
参考代码:
# 核心 递归遍历目录
# 测试数据
test_data1 = ["3 15 ()","1 20 (2)","2 10 (3)"
]
test_data2 = ["4 20 ()","5 30 ()","2 10 (4,5)","1 40 ()"
]def fun(index,data):# 计数器 统计文件总大小count = 0for line in data:x,y,z = line.split()if x == index:count += int(y)z = z[1:-1]if z == '':return countelse:if ',' in z:index_list = z.split(',')for _ in index_list:count += fun(_)else:count += fun(z)return countres = fun('2',test_data2)
print(res)
2. 相对开音节
题目描述:
给定一个字符串,以空格为分隔符,反转每个单词中的字母,若单词
中包含如数字等其他非字母时不进行反转。
反转后计算其中含有相对开音节结构的子串个数(连续的子串中部分
字符可以重复)。相对开音节构成的结构为辅音+元音(aeiou)+辅音(r除外)+e,常见
的单词有bike、cake等。
参考代码:
# 测试数据
test_data = "!ekam a ekekac"
# 字母集
char_str = "abcdefghijklmnopqrstuvwxyz"
char_list = list(char_str)
# 开音节字母集
k_char_str = "bcdfghjklmnpqrstvwxyz"
k_char_list = list(k_char_str)def fun(temp_str):# 字符分割temp_str_list = temp_str.split()# 存放新的 字符new_list = []for s in temp_str_list:# 该标志用于控制字符串是否反转flag = Truefor _ in s:if _ not in char_str:flag = Falsebreakif flag:s_list = list(s)s_list.reverse()new_list.append(''.join(s_list))else:new_list.append(s)# 统计 开音节个数count = 0for ele in new_list:for cur,s in enumerate(ele):# 开音节字母判断if cur <= len(ele) - 4: if ele[cur] in k_char_list and ele[cur+1] in ['a','e','i','o','u'] and(ele[cur+2] in k_char_list and ele[cur+2] != 'r') and ele[cur+3] == 'e':count += 1# 打印开音节个数print(count)fun(test_data)
3. 找最小数
题目描述:
给一个正整数NUM1,计算出新正整数NUM2,NUM2为NUM1中移
除N位数字后的结果,需要使得NUM2的值最小。
输入: 26153714
输出: 131
说明: 移除 2,6,5,7 这4个数字,剩下 1、3、1 按原有顺序排列组成
131 为最小值。
算法可以参考下图:

参考代码:
# 测试数据
test_data = "2615371"
# 移除的个数
num = 4def fun(temp_str,num):# 字符转列表str_list = list(temp_str)# 字符串 转成 整形str_list = [ int(i) for i in str_list ]# 用于确定 要删除数的范围count = len(str_list) - numcur = -(count - 1)# 存放最后结果t_str = ''pos = -1for i in range(count):temp_list = str_list[pos+1:cur]if len(temp_list) == 0:ele = str_list[-1]else:ele = min(temp_list)pos = str_list.index(ele)t_str += str(ele)cur += 1print(t_str)fun(test_data,num)
相关文章:
华为OD试题二(文件目录大小、相对开音节、找最小数)
1. 文件目录大小 题目描述: 一个文件目录的数据格式为:目录id,本目录中文件大小,(子目录id 列表)。其中目录id全局唯一,取值范围[1,200],本目录中文件大小范 围[1,1000],子目录id列表个数[0,10…...
【Spark精讲】Spark作业执行原理
基本流程 用户编写的Spark应用程序最开始都要初始化SparkContext。 用户编写的应用程序中,每执行一个action操作,就会触发一个job的执行,一个应用程序中可能会生成多个job执行。一个job如果存在宽依赖,会将shuffle前后划分成两个…...
Docker容器:Centos7搭建Docker镜像私服harbor
目录 1、安装docker 1.1、前置条件 1.2、查看当前操作系统的内核版本 1.3、卸载旧版本(可选) 1.4、安装需要的软件包 1.5、设置yum安装源 1.6、查看docker可用版本 1.7、安装docker 1.8、开启docker服务 1.9、安装阿里云镜像加速器 1.10、设置docker开机自启 2、安…...
ClickHouse安装和部署
ClickHouse安装过程: ClickHouse支持运行在主流64位CPU架构(X86、AArch和PowerPC)的Linux操作 系统之上,可以通过源码编译、预编译压缩包、Docker镜像和RPM等多种方法进行安装。由于篇幅有限,本节着重讲解离线RPM的安…...
Spring Cloud Gateway中对admin端点进行认证
前言 我们被扫了一个漏洞,SpringBoot Actuator 未授权访问,漏洞描述是这样的: Actuator 是 springboot 提供的用来对应用系统进行自省和监控的功能模块,借助于 Actuator 开发者可以很方便地对应用系统某些监控指标进行查看、统计…...
2. 如何通过公网IP端口映射访问到设备的vmware虚拟机的ubuntu服务器
文章目录 1. 主机设备是Windows 11系统2. 安装vmware虚拟机3. 创建ubuntu虚拟机(据说CentOS 7 明年就不维护了,就不用这个版本的linux了)4. 安装nginx服务:默认端口805. 安装ssh服务:默认端口226. 设置主机 -> ubuntu的端口映射7. 设置路由…...
配置android sudio出现的错误
导入demo工程,配置过程参考: AndroidStudio导入项目的正确方式,修改gradle配置 错误:Namespace not specified. Specify a namespace in the module’s build file. 并定位在下图位置: 原因:Android 大括号…...
【初阶C++】前言
C前言 1. 什么是C2. C发展史3. C的重要性4. 如何学习C 1. 什么是C C语言是结构化和模块化的语言,适合处理较小规模的程序。对于复杂的问题,规模较大的程序,需要高度的抽象和建模时,C语言则不合适。为了解决软件危机, …...
MAC IDEA Maven Springboot
在mac中,使用idea进行maven项目构建 环境配置如何运行maven项目1.直接在IDEA中运行2.使用jar打包后执行 如何搭建spring boot1.添加依赖2.创建入口类3.创建控制器4. 运行5.其他 环境配置 官网安装IDEA使用IDEA的创建新项目选择创建MAEVEN项目测试IDEA的MAVEN路径是…...
Angular13无法在浏览器debug
前言 本文将介绍如何解决在Angular 13中无法在浏览器中进行调试的问题,并提供了一种解决方法。 发生场景 根据项目需求,升级至Angular 13后,发现无法在浏览器中进行调试。 问题原因 无法进行调试的原因是,当使用Angular 13的…...
H.264与H.265(HEVC):视频编码的演进
目录 H.264的发展历程 1. 标准发布 2. 广泛应用 3. 专业化应用 H.265的出现...
Python从入门到精通九:Python异常、模块与包
了解异常 什么是异常 当检测到一个错误时,Python解释器就无法继续执行了,反而出现了一些错误的提示,这就是所谓的“异常”, 也就是我们常说的BUG bug单词的诞生 早期计算机采用大量继电器工作,马克二型计算机就是这样的。 19…...
无需公网IP联机Minecraft,我的世界服务器本地搭建教程
目录 前言 1.Mcsmanager安装 2.创建Minecraft服务器 3.本地测试联机 4. 内网穿透 4.1 安装cpolar内网穿透 4.2 创建隧道映射内网端口 5.远程联机测试 6. 配置固定远程联机端口地址 6.1 保留一个固定TCP地址 6.2 配置固定TCP地址 7. 使用固定公网地址远程联机 8.总…...
机器学习-SVM(支持向量机)
推荐课程:【机器学习实战】第5期 支持向量机 |数据分析|机器学习|算法|菊安酱_哔哩哔哩_bilibili 赞美菊神ヾ ( ゜ⅴ゜)ノ 一、什么是支持向量机? 支持向量机(Support Vector Machine, SVM)是一类按监督学习࿰…...
保姆级:Windows Server 2012上安装.NET Framework 3.5
📚📚 🏅我是默,一个在CSDN分享笔记的博主。📚📚 🌟在这里,我要推荐给大家我的专栏《Windows》。🎯🎯 🚀无论你是编程小白,还是有…...
昇腾910安装驱动出错,降低Centos7.6的内核版本
零、问题描述: 在安装Atlas800-9000服务器的驱动的时候,可能会出现错误:Dkms install failed, details in : /var/log/ascend_seclog/ascend_install.log 如下所示: [rootlocalhost ~]# ./Ascend-hdk-910-npu-driver_23.0.rc3_l…...
LeetCode刷题日志-73矩阵置零
思路一: 用一个同样大小的矩阵记录0的位置,然后遍历矩阵置0, 空间复杂度为O(mn) class Solution {public void setZeroes(int[][] matrix) {int [][] matrix_new new int[matrix.length][matrix[0].length];for(int …...
基于Python+WaveNet+MFCC+Tensorflow智能方言分类—深度学习算法应用(含全部工程源码)(四)
目录 前言引言总体设计系统整体结构图系统流程图 运行环境模块实现1. 数据预处理2. 模型构建3. 模型训练及保存4. 模型生成 系统测试1. 训练准确率2. 测试效果 相关其它博客工程源代码下载其它资料下载 前言 博主前段时间发布了一篇有关方言识别和分类模型训练的博客ÿ…...
文件操作及函数
什么是文件? 在程序设计中,文件有两种:程序文件和数据文件。 程序文件 包括源程序文件(.c),目标文件(.obj),可执行程序(.exe)。 数据文件 文件的内容不一定是程序&…...
阿里云国际版无法远程连接Windows服务器的排查方法
如果您遇到紧急情况,需要尽快登录Windows实例,请参见以下操作步骤,先检查ECS实例的状态,然后通过云助手向Windows实例发送命令或通过VNC登录实例,具体步骤如下: 步骤一:检查ECS实例状态 无论何…...
Nature Microbiology|质粒驱动的抗菌素耐药性进化:插入序列介导的基因失活新机制
背景 抗菌素耐药性(AMR)是全球公共卫生面临的严峻挑战。细菌进化出耐药性的主要途径包括基因突变和通过水平基因转移(Horizontal Gene Transfer, HGT)获得外源耐药基因。在后者中,接合质粒扮演了核心角色,它…...
低成本个人知识库:OpenClaw+Qwen3-32B构建自动化归档系统
低成本个人知识库:OpenClawQwen3-32B构建自动化归档系统 1. 为什么需要个人知识库自动化 作为一个长期与技术文档打交道的开发者,我发现自己陷入了一个怪圈:每天收集大量有价值的网页、论文和代码片段,但它们最终都散落在浏览器…...
PostgreSQL 判断大导入是否正在执行 pg_stat_activity
PostgreSQL 判断大导入还在跑吗?pg_stat_activity 完整笔记(ERP Staging 场景) 摘要 大批量 ERP 资源导入(Excel → erp_resource_import_staging → 合并正式表)时,Java 应用常因单条大 SQL 长时间无日志&…...
2.5MW ANPC拓扑储能变流器PCS整流器仿真搭建之旅
储能变流器pcs整流器仿真模型,联系默认发百度,ANPC电路拓扑,2.5MW,电压外环,电流内环,2016版本的matlab在电力电子领域,储能变流器PCS(Power Conversion System)的整流器…...
政府科技管理部门如何优化区域科技创新治理?
观点作者:科易网-国家科技成果转化(厦门)示范基地 摘要 在数智时代背景下,区域科技创新治理的复杂性显著提升,传统治理模式面临资源分散、服务碎片化、匹配效率低等核心痛点。政府科技管理部门亟需借助“数智产品共享…...
生成历史场景数据(实际应用替换为真实数据)
电热冷氢综合能源系统分布式鲁棒优化运行,基于Wasserstein 距离,包含结果绘图和随机优化和鲁棒优化对比场景,代码备注详细最近在搞综合能源系统的兄弟肯定对"不确定性"这词深恶痛绝——电力负荷说变就变,氢能价格跟过山…...
水厂供水泵房自控案例(工程实际在用) PLC程序+触摸屏程序+组态软件程序+图纸
水厂供水泵房自控案例(工程实际在用) PLC程序触摸屏程序组态软件程序图纸;凌晨三点,水厂中控室的警报突然炸响。我盯着屏幕上跳动的压力曲线,右手已经摸到了对讲机——这种情况在供水泵房太常见了。今天要聊的自控系统,可是我们项…...
CnOpenData 沪市IPO发行文件-B来源
IPO(Initial Public Offing),即首次公开募股,是指一家企业(发行人)第一次将它的股份向公众出售。资本市场是现代金融体系的核心,是企业最高效的融资渠道和最强大的资本运作平台,IPO作为公司登陆资本市场的唯一路径,将使…...
Autovisor:智能优化在线课程学习效率的自动化解决方案
Autovisor:智能优化在线课程学习效率的自动化解决方案 【免费下载链接】Autovisor 2025智慧树刷课脚本 基于Python Playwright的自动化程序 [有免安装版] 项目地址: https://gitcode.com/gh_mirrors/au/Autovisor 在数字化学习日益普及的今天,在线…...
全电发票普及,智蜂AI智能代账助力合规与高效
票据管理时代已至智蜂AI代账破局增效人工智能自动化智蜂财税专注AI 人工智能代账服务,以智能系统高效处理票据、记账、报税,搭配专业会计师人工审核把关,为中小微企业提供安全、高效、合规的一站式财税解决方案,助力企业降本增效…...
