力扣(leetcode)闲来无事刷一刷

python学习---001/002 0.什么是BIF ////Python的内置函数 1.用课堂上小甲鱼教的方法数数Python3提供了多少BIF? //////68 在IDLE中,输入dir(builtins) 前后是2个下划线 查看详细的BIF功能,在shell–IDLE中输入help(input) 2.关于"FishC"与"fishC"有区别吗 Python严格区分大小写 3.3.Python中什么是最重要的? 缩进—tab ** 4.=与==的区别 一个是赋值,2个是等于 ** 5 拼接的意思? l两种类型拼接在起 动手: 阅读详情

力扣(leetcode)423. 从英文中重建数字 python

题目

给定一个非空字符串,其中包含字母顺序打乱的英文单词表示的数字0-9。按升序输出原始的数字。

注意:

输入只包含小写英文字母。
输入保证合法并可以转换为原始的数字,这意味着像 “abc” 或 “zerone” 的输入是不允许的。
输入字符串的长度小于 50,000。
示例 1:

输入: “owoztneoer”

输出: “012” (zeroonetwo)
示例 2:

输入: “fviefuro”

输出: “45” (fourfive)

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/reconstruct-original-digits-from-english
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

思路

这道题挺有意思,我直接在纸上写下了0~9的英语,先找哪些字母和数字是唯一对应的,比如z只有0有,然后把0中含有的e,r,o的个数从字符串中减掉,再把0排除掉,以此类推可以推出每一个数字的个数都可以由一个字符的个数确定。

遇到的问题

1,有点麻烦
2,本来想使用str.count,但是用了之后会报超时的错误,没有深究,就手写了。

代码

class Solution:
    def originalDigits(self, s: str) -> str:
        countz=countw=countu=countf=countx=counts=counto=countr=countg=counti=0
        for i in s:
            if i=='z':
                countz=countz+1
            elif i=='w':
                countw=countw+1
            elif i=='u':
                countu=countu+1
            elif i=='f':
                countf=countf+1
            elif i=='x':
                countx=countx+1
            elif i=='s':
                counts=counts+1
            elif i=='o':
                counto=counto+1
            elif i=='r':
                countr=countr+1
            elif i=='g':
                countg=countg+1
            elif i=='i':
                counti=counti+1
        countr=countr-countz
        counto=counto-countz-countw-countu
        countf=countf-countu
        countr=countr-countu
        counts=counts-countx   
        counti=counti-countf-countx-countg
        out="0"*countz+"1"*counto+"2"*countw+"3"*countr+"4"*countu+"5"*countf+"6"*countx+"7"*counts+"8"*countg+"9"*counti
        print(out)
        return out

结果

通过	 112 ms	14.4 MB

结论

还是太菜,可以看看其他人有没有更好的解题方法

医药行业SAP序列号管理深度解析:如何满足GMP合规要求 本文深度解析了医药行业如何利用SAP序列号管理构建满足GMP合规要求的数字化追溯体系。文章详细阐述了SAP序列号在实现从生产到患者全流程“码”精准追溯中的核心作用,并探讨了其与质量管理、冷链监控等系统的关键集成配置,为医药企业应对严格监管、保障产品质量与安全提供了切实可行的技术方案。 阅读详情

相关推荐

NAO V6 开发环境的配置(附所有文件)

NAO V6开发环境配置前言环境Robot SettingsChoregraphe 2.8.5.10python2.7+naoqi2.8+opencv4.1.0putty与FileZilla 前言 学校的机器人摸索了段时间,之前摸爬滚打探索环境,之前没接触这类机器人可能会常艰辛,希望能给需要的人些帮助。Nao与pepper通用 环境 win10(x64)+naoqi2.8 1、Robot S...

wbhhello的博客 3199

给定一个句子(只包含字母格), 将句子中的单词位置反转,单词用格分割, 单词之间只有一个格,前后没有

题目描述 给定一个句子(只包含字母格), 将句子中的单词位置反转,单词用格分割, 单词之间只有一个格,前后没有格。 比如: (1) “hello xiao mi”-> “mi xiao hello” 输入描述: 输入数据有多组,每组占行,包含一个句子(句子长度小于1000个字符) 输出描述: 对于每个测试示例,要求输出句子中单词反转后形成的句子

怎么把leetcode切成英文-Code-Problem-Practice:重新编码我的编码练习程序

怎么把leetcode文字英文代码-问题-实践 记录我的编码练习程序 :rocket: 2020.5.5 leetcode: Math :star: 两个指针解决方案:注意 int 溢出 哈希集 一个自然数是两个平方的和,当且仅当每个 3 模 4 的素因数在该数的素数因式分解中出现偶次幂。 字符串操作 牛顿法 二分查找 :star: 删除案例 int countPrimes(int n) { if (n<3> isPrime(n+1, 1); int count = 1; for (int i=3; i<n; i+=2){ if (isPrime[i]==1) { count++; for (int j = i; j<=n/i; j+=2) isPrime[j*i] = 0; } } return count; } :star: 2020.5.3 选择中位数: 替换排序:使用 quickSelect 查找第 k 个最大元素。 从尾部到头部次 :star: 动态规划 从最少到最多,通过map迭代求解 2020.4.29 leetcode: math 对数字本身进行异或运算结果为 0 XOR 是可

LeetCode题技巧

leetcode 题技巧

人类所有真实的快乐,一定是恒久的努力 1459

怎么将力扣的代码在本地运行C++

今天刚玩力扣,发现的提交页面和平常看到的不样,就很疑惑,查了查资料发现,力扣官网为了让用户更关注代码,自动添加了输入,也就是说,我们不用操心输入的问题,只需要使用class Solution(类解决方案)里的输入变量就行。原文链接:https://blog.csdn.net/m0_62869178/article/details/128934136。只需要我们定义一个主函数,并且设置一个和函数返回值样的变量即可,同时别忘了输入的参数。这里参考这位大佬的文章,讲的很详细。怎们将力扣上的代码在本地运行。

qq_51286996的博客 538

leetcode(力扣)题题解网站

中文题解直接看力扣的题解 如果想要看国外大神的相关题解,只需要将中文题解网址中的’-cn’ 去掉即可 英文题解网址: https://leetcode.com/problems/binary-tree-preorder-traversal/ 进去以后点击Discuss即可。 ...

weixin_45666566的博客 1782

力扣上的代码想在本地编译运行?

很多录友都问过我一个问题,就是力扣上的代码如何在本地编译运行?

代码随想录 9164

LeetCode 423. 从英文中重建数字(C++、python)

给定一个字符串,其中包含字母顺序打乱英文单词表示数字0-9。按升序输出原始的数字。 注意: 输入只包含小写英文字母。 输入保证合法并可以转换为原始的数字,这意味着像 "abc" 或 "zerone" 的输入是不允许的。 输入字符串的长度小于 50,000。 示例 1: 输入: "owoztneoer" 输出: "012" (zeroonetwo) 示例 2: 输入: ...

qq_27060423的博客 1011

如何力扣

剑指,第次快,有思路就写,没思路直接看最优解,第二遍不看,自己,剩下就是按标签,前十到十五道。 有资源的可以跟着九章算法走,讲的算是比较细的了 开始总结力扣的思路 先题, 10分钟没有思路看答案,找两种方法看。 不会的找相对应的知识点看,(书、哔哩哔哩视频、旧帐算法的视频) 题10分钟 看答案1h 看对应的知识点2h 大概3hd ...

Magic_o的博客 3428

Leetcode 423.从英文中重建数字

从英文中重建数字 给定一个字符串,其中包含字母顺序打乱英文单词表示数字0-9。按升序输出原始的数字。 注意: 输入只包含小写英文字母。 输入保证合法并可以转换为原始的数字,这意味着像 "abc" 或 "zerone" 的输入是不允许的。 输入字符串的长度小于 50,000。 示例 1: 输入: "owoztneoer" 输出: "012" (ze...

kexinxin1的博客 796

leetcode423. 从英文中重建数字

https://leetcode-cn.com/problems/reconstruct-original-digits-from-english/ classSolution{ public: stringoriginalDigits(strings){ stringret; unordered_map<char,int>mpC; for(inti=0;i<s.size();i++){ ...

Chevy_cxw的博客 138

小丽君统计器

小丽君统计器

上一篇: 力扣(leetcode)闲来无事刷一刷
下一篇: 力扣(leetcode)闲来无事刷一刷
煎饼卷烟筒
博客等级 码龄7年 1粉丝 12原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值