LeetCode双周赛解题:字符串解码与数学优化技巧
1. 比赛概述与解题思路上周参加了LeetCode第179场双周赛这次比赛题目质量不错前三题涵盖了字符串处理、贪心算法和数学思维等典型编程竞赛考点。作为每周固定的算法练习这类比赛对保持编程手感很有帮助。下面分享我对Q1-Q3的解题思路和实现细节。2. Q1字符串解码问题2.1 题目分析题目要求将给定格式的字符串解码其中包含数字和字母的组合。例如输入a2b3c1需要输出aabbbc。这类字符串操作题在笔试面试中很常见。2.2 解题思路采用双指针法遍历字符串一个指针定位字母字符另一个指针定位后续的数字将字母重复数字指定的次数后拼接def decodeString(s): res [] i 0 while i len(s): char s[i] if char.isalpha(): num_start i 1 while num_start len(s) and s[num_start].isdigit(): num_start 1 count int(s[i1:num_start]) res.append(char * count) i num_start else: i 1 return .join(res)2.3 注意事项注意处理连续数字的情况如a12b考虑字符串末尾没有数字的特殊情况时间复杂度O(n)空间复杂度O(n)3. Q2灯泡开关问题3.1 问题描述给定n个灯泡的初始状态和一系列操作求最终亮着的灯泡数量。每次操作会切换指定倍数位置的灯泡状态。3.2 解题思路通过观察可以发现每个灯泡被切换的次数等于其编号的因数个数只有完全平方数的因数个数为奇数因此最终亮着的灯泡数量等于⌊√n⌋import math def bulbSwitch(n): return int(math.sqrt(n))3.3 优化技巧使用数学方法避免模拟操作注意大数情况下的精度问题时间复杂度O(1)空间复杂度O(1)4. Q3时间显示问题4.1 题目要求将给定的秒数转换为HH:MM:SS格式处理各种边界情况。4.2 实现方案使用整除和取模运算分解时间单位def formatTime(seconds): hours seconds // 3600 seconds % 3600 minutes seconds // 60 seconds % 60 return f{hours:02d}:{minutes:02d}:{seconds:02d}4.3 常见错误忘记处理单数字情况的前导零错误计算时间单位转换如用100进制而非60进制未考虑输入为0的特殊情况5. 比赛经验总结字符串处理要注意边界条件和特殊输入数学类问题多观察规律避免暴力解法时间/日期问题要小心单位换算和格式化输出建议先写测试用例验证边界情况Python内置函数如math.sqrt可以大幅简化代码这类周赛题目很适合锻炼基础算法能力建议每周坚持参加并复盘错题。对于想提高编程能力的开发者系统性地刷题比随机做题效果更好。

相关新闻

[护网杯 2018]easy_tornado学习笔记

[护网杯 2018]easy_tornado学习笔记

正文一、代码审计&#xff0c;信息收集二、SSTI漏洞分析与利用1. SSTI 定义2. 使用三、Tornado泄漏 cookie_secret四、计算flag正文 一、代码审计&#xff0c;信息收集 访问首页&#xff0c;发现三个文件链接&#xff1a; <a href/file?filename/flag.txt&filehash4…

2026/10/5 2:16:16 阅读更多 →
LeetCode Hot100 滑动窗口 + 前缀和专项题解笔记

LeetCode Hot100 滑动窗口 + 前缀和专项题解笔记

本次整理三道高频连续子数组/子串经典题&#xff1a; 3.无重复字符的最长子串&#xff08;滑动窗口&#xff09; 438.找到字符串中所有字母异位词&#xff08;定长滑动窗口&#xff09; 560.和为K的子数组&#xff08;前缀和哈希&#xff0c;无法用滑动窗口&#xff09;核心区分…

2026/10/9 5:22:18 阅读更多 →
深入解析C55x DSP底层驱动:PLL、PWR、RTC与TIMER模块实战指南

深入解析C55x DSP底层驱动:PLL、PWR、RTC与TIMER模块实战指南

1. 项目概述&#xff1a;从寄存器到驱动&#xff0c;掌握C55x DSP的底层脉搏如果你在嵌入式领域&#xff0c;尤其是数字信号处理&#xff08;DSP&#xff09;方向摸爬滚打过一阵子&#xff0c;一定会对“芯片支持库”&#xff08;Chip Support Library&#xff0c; CSL&#xf…

2026/10/10 11:11:21 阅读更多 →

最新新闻

【单片机课设毕设项目】基于物联网的居室空气质量监测与自动通风补光系统设计 基于单片机的室内环境综合参数检测与手机端告警装置设计(030125)

【单片机课设毕设项目】基于物联网的居室空气质量监测与自动通风补光系统设计 基于单片机的室内环境综合参数检测与手机端告警装置设计(030125)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于嵌入式单片机&#xff0c;Java、小程序技术领域和毕业项目实战 ✌️…

2026/10/11 9:35:44 阅读更多 →
AI算力评估报告怎么读?EFLOPS口径、服务器市场与行业排名的落地解析

AI算力评估报告怎么读?EFLOPS口径、服务器市场与行业排名的落地解析

简介&#xff1a;《2022-2023中国人工智能计算力发展评估报告》由浪潮信息发布&#xff0c;面向关注算力产业趋势的技术决策者、AI从业者与行业研究人员&#xff0c;系统呈现中国AI计算力发展全貌。报告共32页&#xff0c;基于IDC调研数据&#xff0c;围绕芯片、服务器、计算架…

2026/10/11 9:35:44 阅读更多 →
一文读懂 PoE+Modbus TCP 温湿度传感器布线规范与故障排查

一文读懂 PoE+Modbus TCP 温湿度传感器布线规范与故障排查

以太网型温湿度传感器&#xff1a;PoE供电与Modbus TCP工业监控部署指南盛世宏博以太网温湿度传感器引言在机房动环、智慧档案库房、配电室、无尘车间等工业监控场景&#xff0c;环境温湿度、露点数据是设备安全、档案长期保存的核心监测指标。传统RS485总线、4-20mA模拟量变送…

2026/10/11 9:35:44 阅读更多 →
老显卡UEFI黑屏亮度失灵?GOP更新刷VBIOS实战指南

老显卡UEFI黑屏亮度失灵?GOP更新刷VBIOS实战指南

简介&#xff1a;这是面向AMD与Nvidia显卡用户的GOP更新工具包&#xff0c;适用于Intel平台主板搭配A卡或N卡、遇到显示输出异常或性能优化需求的场景。工具通过刷新显卡GOP/EFI ROM&#xff0c;帮助显卡与BIOS及新系统保持兼容&#xff0c;对多显示器、高分辨率输出和启动画面…

2026/10/11 9:35:44 阅读更多 →
SSM框架实战:Java超市管理系统的数据库设计与实现全解析

SSM框架实战:Java超市管理系统的数据库设计与实现全解析

如果你正在为Java课程设计或毕业设计发愁&#xff0c;那“java_ssm27基于Java的超市管理系统”这类项目你一定不陌生。它基本上是国内计算机专业里出现频率最高的实战题目之一&#xff0c;核心是用SSM框架&#xff08;Spring、SpringMVC、MyBatis&#xff09;实现一套包含商品管…

2026/10/11 9:35:44 阅读更多 →
Jenkins最新版本2.585修改插件源的方法

Jenkins最新版本2.585修改插件源的方法

前言&#xff1a; Jenkins安装完成后需要下载多个插件&#xff0c;而国外插件源升级站点下载非常慢经常会出现超时的错误影响效率。所以最好的方法是当jenkins安装完成后修改插件源升级站点的地址。关于Jenkins2.585版本的安装方法参见、、。 一、修改更新站点地址 1、在Jenk…

2026/10/11 9:34:43 阅读更多 →

日新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介&#xff1a;基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码&#xff0c;面向计算机相关专业课程设计与期末大作业学生&#xff0c;以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程&#xff0c;…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程&#xff1a;键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化&#xff0c;十个新手有八个栽在"往输入框里填东西"这件事上&#xff1a;要么填不进去&#xff0c;要么填了一半&#xff0c;要么直接把原来内容追加在后面。这背后的根因&…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程&#xff1a;阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀&#xff1a;什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面&#xff0c;跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/11 0:00:27 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介&#xff1a;基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码&#xff0c;面向计算机相关专业课程设计与期末大作业学生&#xff0c;以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程&#xff0c;…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程&#xff1a;键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化&#xff0c;十个新手有八个栽在"往输入框里填东西"这件事上&#xff1a;要么填不进去&#xff0c;要么填了一半&#xff0c;要么直接把原来内容追加在后面。这背后的根因&…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程&#xff1a;阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀&#xff1a;什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面&#xff0c;跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/11 0:00:27 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 5:23:50 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/9 21:32:20 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 10:38:42 阅读更多 →