[Leetcode] 273. Integer to English Words 解题报告
来源:互联网 发布:南方数据粘贴 编辑:程序博客网 时间:2024/06/04 19:45
题目:
Convert a non-negative integer to its english words representation. Given input is guaranteed to be less than 231 - 1.
For example,
123 -> "One Hundred Twenty Three"12345 -> "Twelve Thousand Three Hundred Forty Five"1234567 -> "One Million Two Hundred Thirty Four Thousand Five Hundred Sixty Seven"
思路:
我原来用迭代实现的版本真的太长了。下面这个版本是递归的,非常简洁和好理解。
代码:
class Solution { public: string numberToWords(int num) { if(num == 0) { return "Zero"; } return convert(num).substr(1); }private: string convert(int num) { if(num >= 1000000000) { return convert(num / 1000000000) + " Billion" + convert(num - 1000000000 * (num / 1000000000)); } if(num >= 1000000) { return convert(num / 1000000) + " Million" + convert(num - 1000000 * (num / 1000000)); } if(num >= 1000) { return convert(num / 1000) + " Thousand" + convert(num - 1000 * (num / 1000)); } if(num >= 100) { return convert(num / 100) + " Hundred" + convert(num - 100 * (num / 100)); } if(num >= 20) { return " " + above20[num / 10 - 2] + convert(num - 10 * (num / 10)); } if(num >= 1) { return " " + below20[num - 1]; } return ""; } string above20[8] = {"Twenty", "Thirty", "Forty", "Fifty", "Sixty", "Seventy", "Eighty", "Ninety"}; string below20[19] = {"One", "Two", "Three", "Four", "Five", "Six", "Seven", "Eight", "Nine", "Ten", "Eleven", "Twelve", "Thirteen", "Fourteen", "Fifteen", "Sixteen", "Seventeen", "Eighteen", "Nineteen"}; };
阅读全文
0 0
- LeetCode-Integer to English Words-解题报告
- 【LeetCode】Integer to English Words 解题报告
- [leetcode] 273. Integer to English Words 解题报告
- 【LeetCode】273. Integer to English Words 解题报告
- [Leetcode] 273. Integer to English Words 解题报告
- [leetcode] 273.Integer to English Words
- [LeetCode]273. Integer to English Words
- [leetcode] 273. Integer to English Words
- leetcode:273. Integer to English Words
- leetcode 273. Integer to English Words
- LeetCode 273. Integer to English Words
- LeetCode 273. Integer to English Words
- leetcode.273. Integer to English Words
- [Leetcode] 273. Integer to English Words
- leetcode 273. Integer to English Words
- 【LeetCode】273. Integer to English Words
- [LeetCode]273. Integer to English Words
- LeetCode-273. Integer to English Words
- 异步加载——MVP
- Wireshark网络抓包(一)——数据包、着色规则和提示
- 日常充电之--PHP表单验证
- 七、C_base——函数
- Dedecms网站服务器如何搬家?
- [Leetcode] 273. Integer to English Words 解题报告
- 不选择使用Lucene的6大原因?
- Hadoop入门基础教程 Hadoop之完全分布式环境搭建
- 来自 Adobe 的用户体验专家 AEM 之:第三方包的部署
- Springmvc+hibernate+spring简单实例实现(个人编译通过)
- 05构建一个网站高级测试计划
- alt+enter添加到自动清单文件
- 免费下载!业界首部安卓热修复宝典出炉,阿里技术大牛联袂推荐
- gradle学习笔记,常用命令,多渠道打包等