LeetCode 273. 整数转换英文表示

1. 题目

将非负整数转换为其对应的英文表示。可以保证给定输入小于 231 - 1 。

示例 1:
输入: 123
输出: "One Hundred Twenty Three"示例 2:
输入: 12345
输出: "Twelve Thousand Three Hundred Forty Five"示例 3:
输入: 1234567
输出: "One Million Two Hundred Thirty Four Thousand Five Hundred Sixty Seven"示例 4:
输入: 1234567891
输出: "One Billion Two Hundred Thirty Four Million Five Hundred Sixty Seven Thousand Eight Hundred Ninety One"

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

2. 解题

  • 题目不难,对各种情况的考虑需要全面
  • 写的不是很简洁,大家有更简洁的请告之学习观摩
class Solution {unordered_map<int,string> bits = {{1,"One"},{2,"Two"},{3,"Three"},{4,"Four"},{5,"Five"},{6,"Six"},{7,"Seven"},{8,"Eight"},{9,"Nine"},{10,"Ten"},{11,"Eleven"},{12,"Twelve"},{13,"Thirteen"},{14,"Fourteen"},{15,"Fifteen"},{16,"Sixteen"},{17,"Seventeen"},{18,"Eighteen"},{19,"Nineteen"},{20,"Twenty"},{30,"Thirty"},{40,"Forty"},{50,"Fifty"},{60,"Sixty"},{70,"Seventy"},{80,"Eighty"},{90,"Ninety"}};
public:string numberToWords(int num) {if(num == 0)return "Zero";string ans, temp;int i = 0;vector<string> units = {"","Thousand","Million","Billion"};while(num){temp = tran(num%1000);if(temp != "")//三位数都是0,跳过{temp = temp + (i>0 ? (" " + units[i]) : "");ans = " " + temp + ans;}i++;num /= 1000;//每3位一处理}if(ans.front() == ' ')    ans = ans.substr(1);//最前面可能有空格,删除return ans;}string tran(int num)//处理3位数{if(num == 0)return "";string str;int k = num/100;//百位数if(k>0)str = bits[k] + " " + "Hundred";num %= 100;//后两位if(num>0 && num <20)if(str != "")//百位不为空str += " " + bits[num];elsestr = bits[num];else if(num >= 20){k = num/10*10;// k = ?0if(k != 0){if(str != "")//前面不为0str += " " + bits[k];elsestr += bits[k];}num %= 10;//个位if(num > 0)if(str != "")//前面不为0str += " " + bits[num];elsestr += bits[num];}return str;}
};

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/478081.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据标注平台doccano----简介、安装、使用、踩坑记录

1.doccano的安装与初始配置 1.1 doccano的用途 document classification 文本分类sequence labeling 序列标注&#xff0c;用于命名实体识别sequence to sequence seq2seq&#xff0c;用于翻译speech to text 语音转文本标注 命名实体标注 序列标注&#xff08;如机器翻译&…

月圆花美 中秋快乐!

OpenKGOpenKG&#xff08;中文开放知识图谱&#xff09;旨在推动以中文为核心的知识图谱数据的开放、互联及众包&#xff0c;并促进知识图谱算法、工具及平台的开源开放。点击阅读原文&#xff0c;进入 OpenKG 网站。

大众点评支付渠道网关系统的实践之路

业务的快速增长&#xff0c;要求系统在快速迭代的同时&#xff0c;保持很好的扩展性和可用性。其中&#xff0c;交易系统除了满足上述要求之外&#xff0c;还必须保持数据的强一致性。对系统开发人员而言&#xff0c;这既是机遇&#xff0c;也是挑战。本文主要梳理大众点评支付…

拍不完的脑袋:推荐系统打压保送重排策略

文 | 水哥源 | 知乎saying1.懂模型不只是要知道模型能干什么&#xff0c;更要知道它不能干什么2.在从业一段时间后应该有一次“转职”&#xff0c;如果你相信模型无所不能&#xff0c;你应该走科研路线&#xff1b;如果你对模型不是很放心&#xff0c;那你应该成为一名工程师3.…

LeetCode 572. 另一个树的子树(二叉树迭代器)

1. 题目 给定两个非空二叉树 s 和 t&#xff0c;检验 s 中是否包含和 t 具有相同结构和节点值的子树。s 的一个子树包括 s 的一个节点和这个节点的所有子孙。s 也可以看做它自身的一棵子树。 示例 1: 给定的树 s:3/ \4 5/ \1 2 给定的树 t&#xff1a;4 / \1 2 返回 tr…

FastAPI:Python 世界里最受欢迎的异步框架

FastAPI&#xff1a;Python 世界里最受欢迎的异步框架&#xff1a;https://www.cnblogs.com/traditional/p/14733610.html

论文浅尝 | Multimodal Few-Shot Learning with Frozen Language Models

笔记整理&#xff1a;李磊&#xff0c;浙江大学硕士&#xff0c;研究方向为自然语言处理 链接&#xff1a;https://arxiv.org/abs/2106.13884动机大规模的自回归语言模型&#xff08;如GPT&#xff09;在预训练阶段学习到了大量的知识&#xff0c;具有很好的学习新任务的能力&a…

Spark性能优化指南——高级篇

继基础篇讲解了每个Spark开发人员都必须熟知的开发调优与资源调优之后&#xff0c;本文作为《Spark性能优化指南》的高级篇&#xff0c;将深入分析数据倾斜调优与shuffle调优&#xff0c;以解决更加棘手的性能问题。 调优概述 有的时候&#xff0c;我们可能会遇到大数据计算中一…

LeetCode 342. 4的幂(位运算)

文章目录1. 题目2. 解题2.1 通用解法2.2 找规律1. 题目 给定一个整数 (32 位有符号整数)&#xff0c;请编写一个函数来判断它是否是 4 的幂次方。 示例 1: 输入: 16 输出: true示例 2: 输入: 5 输出: false进阶&#xff1a; 你能不使用循环或者递归来完成本题吗&#xff1f; …

格局打开,带你解锁 prompt 的花式用法

文 | Severus就如同《倚天屠龙记》中的主角张无忌&#xff0c;语言模型修炼了深厚的内功&#xff0c;但是遇到他的乾坤大挪移之前&#xff0c;他空有一身本领却不会用。但学会之后&#xff0c;于所有武功又都融会贯通。光明顶上血战六大派&#xff0c;他可以打出比崆峒派威力更…

自动机器学习pycaret,手把手教你自动提取特征、自动选取模型、自动评价

手把手教你自动提取特征、自动选取模型、自动评价 手把手教你使用pycaret Pycaret 3.0 功能抢先体验 5个PyCaret的常见误解

论文浅尝 | 基于异质图交互模型进行篇章级事件抽取

笔记整理&#xff1a;娄东方&#xff0c;浙江大学 & 恒生电子股份有限公司博士后&#xff0c;研究方向为事件抽取来源&#xff1a;ACL2021链接&#xff1a;https://arxiv.org/abs/2105.14924GitHub项目地址&#xff1a;https://github.com/RunxinXu/GIT本文关注篇章事件抽取…

GAN 的内在漏洞,只看眼睛就能找出虚拟人脸?

本文转载自公众号“夕小瑶的卖萌屋”&#xff0c;专业带逛互联网算法圈的神操作 -----》我是传送门 关注后&#xff0c;回复以下口令&#xff1a; 回复【789】 &#xff1a;领取深度学习全栈手册&#xff08;含NLP、CV海量综述、必刷论文解读&#xff09; 回复【入群】&#xf…

LeetCode 869. 重新排序得到 2 的幂(排序 全排列)

1. 题目 给定正整数 N &#xff0c;我们按任何顺序&#xff08;包括原始顺序&#xff09;将数字重新排序&#xff0c;注意其前导数字不能为零。 如果我们可以通过上述方式得到 2 的幂&#xff0c;返回 true&#xff1b;否则&#xff0c;返回 false。 示例 1&#xff1a; 输入…

Spark性能优化指南——基础篇

在大数据计算领域&#xff0c;Spark已经成为了越来越流行、越来越受欢迎的计算平台之一。Spark的功能涵盖了大数据领域的离线批处理、SQL类处理、流式/实时计算、机器学习、图计算等各种不同类型的计算操作&#xff0c;应用范围与前景非常广泛。在美团•大众点评&#xff0c;已…

吴恩达:机器学习的六个核心算法

吴恩达&#xff1a;机器学习的六个核心算法 数据派THU 2022-08-03 17:00 发表于北京 图片 来源&#xff1a;AI科技评论 本文约7200字&#xff0c;建议阅读15分钟 本文介绍了吴恩达在其创办的人工智能周讯《The Batch》上更新了一篇博文&#xff0c;总结了机器学习领域多个基础算…

会议交流 | 京东硅谷首席科学家领衔,图机器学习峰会火热开启!

2021年10月10日&#xff0c;DataFunSummit&#xff1a;图机器学习在线峰会将如约而至。本次峰会的形式再次创新&#xff0c;由图与推荐与DataFun联合策划、京东硅谷研发中心 首席科学家 吴凌飞博士与腾讯大数据 AI平台总监 陶阳宇博士领衔参与&#xff0c;既包括前沿的学术分享…

召回 粗排 精排,如何各司其职?

文 | 水哥源 | 知乎saying1.AB测试几乎是系统改进的不二法则&#xff0c;算法做AB&#xff0c;开发做AB&#xff0c;产品做AB&#xff0c;运营更要做AB2.召回有点像一个甩锅侠&#xff0c;我不管我给的准不准&#xff0c;我就管我把潜在的能投的都吃进来就行3.其他环节想要提升…

LeetCode 558. 四叉树交集(递归)

1. 题目 四叉树是一种树数据&#xff0c;其中每个结点恰好有四个子结点&#xff1a;topLeft、topRight、bottomLeft 和 bottomRight。四叉树通常被用来划分一个二维空间&#xff0c;递归地将其细分为四个象限或区域。 我们希望在四叉树中存储 True/False 信息。四叉树用来表示…

Online Learning算法理论与实践

背景 Online Learning是工业界比较常用的机器学习算法&#xff0c;在很多场景下都能有很好的效果。本文主要介绍Online Learning的基本原理和两种常用的Online Learning算法&#xff1a;FTRL&#xff08;Follow The Regularized Leader&#xff09;[1]和BPR&#xff08;Bayesia…