1309. 解码字母到整数映射

安卓ai自动化脚本 Yyds.Auto实现 示例 纯ai图像识别自动点击脚本 纯ai识别实现自动化脚本 阅读详情

1309. 解码字母到整数映射

给你一个字符串 s,它由数字(‘0’ - ‘9’)和 ‘#’ 组成。我们希望按下述规则将 s 映射为一些小写英文字符:

字符(‘a’ - ‘i’)分别用(‘1’ - ‘9’)表示。
字符(‘j’ - ‘z’)分别用(‘10#’ - ‘26#’)表示。
返回映射之后形成的新字符串。

题目数据保证映射始终唯一。

示例 1:

输入:s = “10#11#12”
输出:“jkab”
解释:“j” -> “10#” , “k” -> “11#” , “a” ->“1” , “b” -> “2”.

示例 2:

输入:s = “1326#” 输出:“acz”

示例 3:

输入:s = “25#”
输出:“y”

示例 4:

输入:s = “12345678910#11#12#13#14#15#16#17#18#19#20#21#22#23#24#25#26#”
输出:“abcdefghijklmnopqrstuvwxyz”

提示:

1 <= s.length <= 1000
s[i] 只包含数字(‘0’-‘9’)和 ‘#’ 字符。
s 是映射始终存在的有效字符串。

class Solution {
public:
    string freqAlphabets(string s) {
		string a;
		
		vector<char> aa;//这个容器可以比作文字提取器,容量为3
		
		for (int i = 0; i < s.size(); )
		{
			while(aa.size()!=3){//这个容器要满了才能工作
				aa.push_back(s[i++]);
			}

			//分两种情况讨论 1->‘1’~‘9’  2-> '10#'~'26#'
			if (aa[2] == '#') {
				a += ('a' + ((aa[0] - '0') * 10) + (aa[1] - '1'));
				aa.erase(aa.begin());
				aa.erase(aa.begin());
				aa.erase(aa.begin());
			}
			else {
				a += 'a' + (aa[0] - '1');
				aa.erase(aa.begin());
			}
		}
		while (aa.size() != 0) {//容器里面还有东西,需要处理完才行
		
			if (aa.size()==3) {//有'#'的情况
				a += ('a' + ((aa[0] - '0') * 10) + (aa[1] - '1'));
				//aa.erase(aa.begin());
				//aa.erase(aa.begin());
				//aa.erase(aa.begin());			//这几行可以不用了,反正不会再用到该容器了,可以直接舍弃了
				break;
			}

			a += 'a' + (aa[0] - '1');
			aa.erase(aa.begin());
		}
	return a;
	}
};

这个方法比较适合人的思维处理模式,时间复杂度为O(2*n),比官方解法慢了一半。

下面是官方解法:

class Solution {
public:
    string freqAlphabets(string s) {
        string ans;
        for (int i = 0; i < s.size(); ++i) {
            if (i + 2 < s.size() && s[i + 2] == '#') {
                ans += char((s[i] - '0') * 10 + (s[i + 1] - '1') + 'a');
                i += 2;
            }
            else {
                ans += char(s[i] - '1' + 'a');
            }
        }
        return ans;
    }
};

作者:LeetCode
链接:https://leetcode-cn.com/problems/decrypt-string-from-alphabet-to-integer-mapping/solution/jie-ma-zi-mu-dao-zheng-shu-ying-she-by-leetcode/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
三电平逆变器LC滤波设计避坑指南:从SVPWM谐波到Simulink仿真验证 本文详细解析了三电平逆变器LC滤波设计中的关键问题,从SVPWM谐波特性到Simulink仿真验证,提供了800V/10kW系统的参数计算方法和优化技巧。通过实际案例和仿真配置示例,帮助工程师避免常见设计误区,提升电能质量和系统稳定性。 阅读详情

相关推荐

QGIS-空间分析-核密度分析

本文在QGIS软件中使用核密度估计法分析全球历年的地震数据,旨在分析出地震频发且严重的区域,为地震防控提供参考依据。全球历年地震数据来源于网络,仅用于技术学习探索。通过核密度分析,可以观察到南美、美国西部海岸线和太平洋北部区域在全球地震分布状态中是最为集中和强烈的。

imxiezy的博客 2467

将整型数字转化成大写格式

将整型数字转化成大写格式 将整型数字转化成大写格式 我们日常报表的打印,单据打印,借据、收据打印等等操作都需要用到将金额装换成大写,防止交易双方通过修改单据数字,因而我们的信息管理系统就把账单的金额转换为大写。 下面是C#的一个将数字转换为大写的实例,解释都在代码中了,具体实现思路就是通过获取页面的整形数字,然后在后台定义大写数字数组,大写单位数组,大写位数数组;通过判断窗体传过来的值通过条件语句...

weixin_44543135的博客 813

计量经济学——事件研究法/事件分析法

计量经济学——事件研究法/事件分析法

weixin_46189461的博客 6752

用模运算实现字母大小写转换

输入一个字母实现大小写转换,若输入不为字母重复出入,直到输入为字母为止,并实现大小写转换。 要求使用模运算。 我看了小甲鱼之后写的 注意此处模运算对象为二进制。 A的ASCII码为65,转换为二进制为1000001 Z的ASCII码为90,转换为二进制为1011010 a的ASCII码为97,转换为二进制为1100001 z的ASCII码为122,转换为二进制为1111010 观察发现,关键在于二...

beautfullboy的博客 550

复信号的调制与解调(基带)

Digital modulation methods can be considered as digital-to-analog conversion and the corresponding demodulation or detection as analog-to-digital conversion. 数字调制可以看成是数字到模拟的变换,同样,数字解调也可以看作是模拟向数字的转换。

JonTargaryen的博客 1万+

UE4/5项目GPU崩溃?可能是Windows的TDR机制在搞鬼!深入浅出聊聊TdrDelay与显卡超时

本文深入探讨了UE4/5项目中GPU崩溃的常见原因,揭示了Windows TDR机制的工作原理及其对渲染进程的影响。通过调整TdrDelay参数和优化GPU负载,提供了解决显卡超时问题的实用方案,帮助开发者提升项目稳定性。

weixin_30691649的博客 409

LeetCode简单题之解码字母到整数映射

题目 给你一个字符串 s,它由数字(‘0’ - ‘9’)和 ‘#’ 组成。我们希望按下述规则将 s 映射为一些小写英文字符: 字符(‘a’ - ‘i’)分别用(‘1’ - ‘9’)表示。 字符(‘j’ - ‘z’)分别用(‘10#’ - ‘26#’)表示。 返回映射之后形成的新字符串。 题目数据保证映射始终唯一。 示例 1: 输入:s = “10#11#12” 输出:“jkab” 解释:“j” -> “10#” , “k” -> “11#” , “a” -> “1” , “b” ->

Lonery的博客 3845

Docker - 基本概念、与虚拟机的区别、架构、镜像操作、容器操作、数据卷挂载

p :将宿主机端口与容器端口映射,冒号左侧是宿主机端口,右侧是容器端口(配置映射是因为用户只能通过 http 请求访问到服务器,不能直接访问到对应的容器,因此需要服务器端口与容器端口建立映射关系)这里我们有两种启动 redis 的方式,第一种是直接启动 redis ,第二种是以 AOF 持久化的方式启动容器(--appendonly yes),如下图。如果需要持续查看日志信息可以添加 -f 参数,例如:docker logs -f mn ,这里 mn 是自定义容器名称, ctrl + c 可以停止跟踪。

CYK_byte的博客 1万+

B站笔试_数字到字母的映射

1->A,2->B...26->Z,输入一个整数,输出数字N代表有多少种表示 输入:111 输出:3 说明:AAA AK KA三种可能性 采用动态规划,dp[i]表示截止到第i个字符有多少种可能性,如果该字符和前一个字符组成的数字>26时,dp[i]=dp[i-1],否则,dp[i]=dp[i-1]+dp[i-2],代码如下: #include<iost...

weixin_40679061的博客 740

【DeepSeek R1构建本地RAG知识库】数据结构化清洗-知识图谱制作、使用、dify集成

本文探讨了在构建本地RAG(Retrieval-Augmented Generation)系统时,如何通过引入知识图谱来增强系统的知识理解能力。传统的向量数据库和嵌入模型虽然能处理语义匹配,但无法有效捕捉知识间的关联性。知识图谱通过“实体-关系-属性”的结构化表示,能够更好地支持推理、推荐和多跳问答等高级功能。文章详细介绍了知识图谱的基本概念、制作思路,以及如何使用Neo4j图数据库进行知识图谱的构建和查询。通过实例展示了从PDF文件解析到知识图谱入库的全过程,强调了知识图谱在提升RAG系统性能中的重要作用

少说,多做 562

uniapp - [全端兼容] 实现精美Editor富文本编辑器功能,uniApp全平台兼容的富文本插件组件用户可上传图片及对接服务器存储文件等,手机移动端H5网页富文本/小程序富文本/App富文本!

uni-app,h5移动端网页,微信小程序,支付宝小程序,Android安卓,苹果ios,app,nvue,uniapp富文本编辑器,uniapp中如何实现各平台都兼容的富文本编辑器,Editor富文本插件,uniApp微信小程序富文本,UNI-APP安卓苹果ios系统App端富文本组件,editor富文本编辑器如何实现上传图片,图片上传后不显示怎么办,如何配置图像上传功能,富文本图片上传怎么传到服务器中,获取图片路径,editor插入图片,富文本编辑器上传图片,报错怎么办,跨域CORS处理,配置不行无效

🏆 前端领域优质创作者 1万+

位运算与字母大小写转换

声明:这些内容主要是面向C语言的初学者,尤其是正在学习C语言的学生。     在读王爽老师的《汇编语言》时,看到了用and 和or指令处理字母大小写转换的例子。and 和or是汇编语言中按位与和按位或操作的指令,对应C语言中的&和|操作。本文把这个例子的C语言版在这里重复一下,以便理解和扩充位运算的应用。     我们知道大小写字母的ASCII码值差32,因此我们通常采用直接加减32的方法

bufanq 5703

SAP会计凭证导入ABAP开发模板+注意点—附带源码

开发并不仅仅只要考虑实现的功能,只实现功能的是程序,考虑到使用场景的是工程。使用bapi校验创建会计凭证的数据,报错和参数和正式创建一致。用途,防止产生错误的凭证,即使财务凭证可以冲销。正式创建会计凭证。隐藏的坑。

小九啥也不会 1232

题目:1309.解码字母到整数映射

leetcode 题目:1309.解码字母到整数映射

2301_76145947的博客 100

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

1309 解码字母到整数映射

题目描述: 给你一个字符串 s,它由数字(‘0’ - ‘9’)和 ‘#’ 组成。我们希望按下述规则将 s 映射为一些小写英文字符: 字符(‘a’ - ‘i’)分别用(‘1’ - ‘9’)表示。 字符(‘j’ - ‘z’)分别用(‘10#’ - ‘26#’)表示。 返回映射之后形成的新字符串。 题目数据保证映射始终唯一。 示例 1: 输入:s = “10#11#12” 输出:“jkab” 解释:“j” -> “10#” , “k” -> “11#” , “a” -> “1” , “b” -&

weixin_44171872的博客 329

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

LeetCode 1309. 解码字母到整数映射

1. 题目 给你一个字符串 s,它由数字(‘0’ - ‘9’)和 ‘#’ 组成。 我们希望按下述规则将 s 映射为一些小写英文字符: 字符('a' - 'i')分别用('1' - '9')表示。 字符('j' - 'z')分别用('10#' - '26#')表示。 返回映射之后形成的新字符串。 题目数据保证映射始终唯一。 示例 1: 输入:s = "10#11#12" 输出:"jkab" 解释...

Michael是个半路程序员 880

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

1309 解码字母到整数映射(map)

1. 问题描述: 给你一个字符串s,它由数字('0' - '9')和'#'组成。我们希望按下述规则将s映射为一些小写英文字符: 字符('a' - 'i')分别用('1' -'9')表示。 字符('j' - 'z')分别用('10#'-'26#')表示。 返回映射之后形成的新字符串。 题目数据保证映射始终唯一。 示例 1: 输入:s = "10#11#12" 输出:"jkab" 解释:"j" -> "10#" , "k" -> "11#" , "a" -> "1"...

二哈 418

leetcode:1309. 解码字母到整数映射

题目来源 leetcode 题目描述 题目解析 倒序遍历 import java.util.HashSet; import java.util.Set; public class Solution { // 倒叙遍历 public static String freqAlphabets(String s) { StringBuffer sb = new Stri...

OceanStar的博客 235

LeetCode|1309.解码字母到整数映射

LeetCode习题答案汇总 题目: 给你一个字符串 s,它由数字(‘0’ - ‘9’)和 ‘#’ 组成。我们希望按下述规则将 s 映射为一些小写英文字符: 字符(‘a’ - ‘i’)分别用(‘1’ - ‘9’)表示。 字符(‘j’ - ‘z’)分别用(‘10#’ - ‘26#’)表示。 返回映射之后形成的新字符串。 题目数据保证映射始终唯一。 示例 1: 输入:s = “10#11#12” 输出:“jkab” 解释:“j” -> “10#” , “k” -> “11#” , “a” ->

小黄的博客 305

LeetCode - 1309 - 解码字母到整数映射

一 目录「不折腾的前端,和咸鱼有什么区别」目录一 目录二 前言三 解题及测试四 LeetCode Submit五 解题思路二 前言「难度」:简单「涉及知识」:字符串「题目地址」:http...

weixin_41806099的博客 310

leetcode 1309. 解码字母到整数映射

【题目】1309. 解码字母到整数映射 给你一个字符串 s,它由数字(‘0’ - ‘9’)和 ‘#’ 组成。我们希望按下述规则将 s 映射为一些小写英文字符: 字符(‘a’ - ‘i’)分别用(‘1’ - ‘9’)表示。 字符(‘j’ - ‘z’)分别用(‘10#’ - ‘26#’)表示。 返回映射之后形成的新字符串。 题目数据保证映射始终唯一。 示例 1: 输入:s = "10#11#12" 输出:"jkab" 解释:"j" -> "10#" , "k" -> "11#" , "a" -&gt

Sophia_fez的博客 383

LeetCode——1309. 解码字母到整数映射

题目描述: 给你一个字符串 s,它由数字(‘0’ - ‘9’)和 ‘#’ 组成。我们希望按下述规则将 s 映射为一些小写英文字符: 字符(‘a’ - ‘i’)分别用(‘1’ - ‘9’)表示。 字符(‘j’ - ‘z’)分别用(‘10#’ - ‘26#’)表示。 返回映射之后形成的新字符串。 题目数据保证映射始终唯一。 提示: 1 <= s.length <= 1000 s[i] 只包含数字(‘0’-‘9’)和 ‘#’ 字符。 s 是映射始终存在的有效字符串。 示例 1: 输入:s =

FYPPPP的博客 242

【简单】1309. 解码字母到整数映射

【题目】 给你一个字符串 s,它由数字(‘0’ - ‘9’)和 ‘#’ 组成。我们希望按下述规则将 s 映射为一些小写英文字符: 字符(‘a’ - ‘i’)分别用(‘1’ - ‘9’)表示。 字符(‘j’ - ‘z’)分别用(‘10#’ - ‘26#’)表示。 返回映射之后形成的新字符串。题目数据保证映射始终唯一。 来源:leetcode 链接:https://leetcode-cn.com/problems/decrypt-string-from-alphabet-to-integer-mapping/

... 333
上一篇: P1540 机器翻译
下一篇: P1036 选数
enjoy_code_
博客等级 码龄7年 1251粉丝 78原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值