当前位置: 首页 > news >正文

Golang | Leetcode Golang题解之第273题整数转换英文表示

题目:

题解:

var (singles   = []string{"", "One", "Two", "Three", "Four", "Five", "Six", "Seven", "Eight", "Nine"}teens     = []string{"Ten", "Eleven", "Twelve", "Thirteen", "Fourteen", "Fifteen", "Sixteen", "Seventeen", "Eighteen", "Nineteen"}tens      = []string{"", "Ten", "Twenty", "Thirty", "Forty", "Fifty", "Sixty", "Seventy", "Eighty", "Ninety"}thousands = []string{"", "Thousand", "Million", "Billion"}
)func numberToWords(num int) string {if num == 0 {return "Zero"}sb := &strings.Builder{}toEnglish := func(num int) {if num >= 100 {sb.WriteString(singles[num/100])sb.WriteString(" Hundred ")num %= 100}if num >= 20 {sb.WriteString(tens[num/10])sb.WriteByte(' ')num %= 10}if 0 < num && num < 10 {sb.WriteString(singles[num])sb.WriteByte(' ')} else if num >= 10 {sb.WriteString(teens[num-10])sb.WriteByte(' ')}}for i, unit := 3, int(1e9); i >= 0; i-- {if curNum := num / unit; curNum > 0 {num -= curNum * unittoEnglish(curNum)sb.WriteString(thousands[i])sb.WriteByte(' ')}unit /= 1000}return strings.TrimSpace(sb.String())
}

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • mongoose之http调试代码
  • 星环科技推出知识库产品 AI PC时代数据交互方式变革
  • 【开发实战】QT5 + OpenCV4 开发环境配置应用演示
  • js-vue中多个按钮状态选中类似于复选框与单选框实现
  • 硅纪元视角 | 语音克隆突破:微软VALL-E 2,Deepfake新纪元!
  • 夏老师小课堂(15)丨空心杯电机基础入门(上海鸣志电器)
  • 【Go系列】Go的UI框架GIO
  • SpringBoot集成Tomcat、DispatcherServlet
  • 【监控软件】Zabbix
  • 【Langchain大语言模型开发教程】基于文档问答
  • 太原高校大学智能制造实验室数字孪生可视化系统平台建设项目验收
  • 基于区块链技术的高校教育资源共享的研究
  • Animate.css的使用
  • 视图,存储过程和触发器
  • 若依 ruoyi poi Excel合并行的导入
  • 【干货分享】SpringCloud微服务架构分布式组件如何共享session对象
  • 【知识碎片】第三方登录弹窗效果
  • 4月23日世界读书日 网络营销论坛推荐《正在爆发的营销革命》
  • Django 博客开发教程 16 - 统计文章阅读量
  • github从入门到放弃(1)
  • javascript 总结(常用工具类的封装)
  • JavaScript工作原理(五):深入了解WebSockets,HTTP/2和SSE,以及如何选择
  • JS进阶 - JS 、JS-Web-API与DOM、BOM
  • Making An Indicator With Pure CSS
  • node学习系列之简单文件上传
  • python 装饰器(一)
  • React-redux的原理以及使用
  • scrapy学习之路4(itemloder的使用)
  • Spring Boot快速入门(一):Hello Spring Boot
  • vue2.0开发聊天程序(四) 完整体验一次Vue开发(下)
  • win10下安装mysql5.7
  • 看完九篇字体系列的文章,你还觉得我是在说字体?
  • 使用权重正则化较少模型过拟合
  • 微信小程序--------语音识别(前端自己也能玩)
  • 想晋级高级工程师只知道表面是不够的!Git内部原理介绍
  • 一加3T解锁OEM、刷入TWRP、第三方ROM以及ROOT
  • 应用生命周期终极 DevOps 工具包
  • 用Python写一份独特的元宵节祝福
  • 3月7日云栖精选夜读 | RSA 2019安全大会:企业资产管理成行业新风向标,云上安全占绝对优势 ...
  • MyCAT水平分库
  • ​Benvista PhotoZoom Pro 9.0.4新功能介绍
  • #include到底该写在哪
  • (1综述)从零开始的嵌入式图像图像处理(PI+QT+OpenCV)实战演练
  • (2024,Vision-LSTM,ViL,xLSTM,ViT,ViM,双向扫描)xLSTM 作为通用视觉骨干
  • (33)STM32——485实验笔记
  • (BFS)hdoj2377-Bus Pass
  • (C++二叉树05) 合并二叉树 二叉搜索树中的搜索 验证二叉搜索树
  • (C语言)球球大作战
  • (react踩过的坑)antd 如何同时获取一个select 的value和 label值
  • (vue)el-cascader级联选择器按勾选的顺序传值,摆脱层级约束
  • (附源码)ssm捐赠救助系统 毕业设计 060945
  • (转)IOS中获取各种文件的目录路径的方法
  • (转)Unity3DUnity3D在android下调试
  • (最全解法)输入一个整数,输出该数二进制表示中1的个数。
  • .NET 4.0中使用内存映射文件实现进程通讯