2022-01-09:整数转换英文表示。将非负整数 num 转换为其对应的英文表示。
示例 1:
输入:num = 123,
输出:“One Hundred Twenty Three”。
力扣273。

答案2022-01-09:

时间紧。具体见代码。

代码用golang编写。代码如下:

package main

import (
"fmt"
"math"
"strings"
) func main() {
num := 123
ret := numberToWords(num)
fmt.Println(ret)
} func num1To19(num int) string {
if num < 1 || num > 19 {
return ""
}
names := []string{"One ", "Two ", "Three ", "Four ", "Five ", "Six ", "Seven ", "Eight ", "Nine ", "Ten ",
"Eleven ", "Twelve ", "Thirteen ", "Fourteen ", "Fifteen ", "Sixteen ", "Seventeen", "Eighteen ",
"Nineteen "}
return names[num-1]
} func num1To99(num int) string {
if num < 1 || num > 99 {
return ""
}
if num < 20 {
return num1To19(num)
}
high := num / 10
tyNames := []string{"Twenty ", "Thirty ", "Forty ", "Fifty ", "Sixty ", "Seventy ", "Eighty ", "Ninety "}
return tyNames[high-2] + num1To19(num%10)
} func num1To999(num int) string {
if num < 1 || num > 999 {
return ""
}
if num < 100 {
return num1To99(num)
}
high := num / 100
return num1To19(high) + "Hundred " + num1To99(num%100)
} func numberToWords(num int) string {
if num == 0 {
return "Zero"
}
res := ""
if num < 0 {
res = "Negative "
}
if num == math.MinInt64 {
res += "Two Billion "
num %= -2000000000
}
num = Abs(num)
high := 1000000000
highIndex := 0
names := []string{"Billion ", "Million ", "Thousand ", ""}
for num != 0 {
cur := num / high
num %= high
if cur != 0 {
res += num1To999(cur)
res += names[highIndex]
}
high /= 1000
highIndex++
}
return strings.Trim(res, " ")
} func Abs(a int) int {
if a < 0 {
return -a
} else {
return a
}
}

执行结果如下:


左神java代码

2022-01-09:整数转换英文表示。将非负整数 num 转换为其对应的英文表示。 示例 1: 输入:num = 123, 输出:“One Hundred Twenty Three“。 力扣273。的更多相关文章

  1. Leetcode 273.整数转换英文表示

    整数转换英文表示 将非负整数转换为其对应的英文表示.可以保证给定输入小于 231 - 1 . 示例 1: 输入: 123 输出: "One Hundred Twenty Three" ...

  2. Java实现 LeetCode 273 整数转换英文表示

    273. 整数转换英文表示 将非负整数转换为其对应的英文表示.可以保证给定输入小于 231 - 1 . 示例 1: 输入: 123 输出: "One Hundred Twenty Three ...

  3. [Swift]LeetCode273. 整数转换英文表示 | Integer to English Words

    Convert a non-negative integer to its english words representation. Given input is guaranteed to be ...

  4. 273 Integer to English Words 整数转换英文表示

    将非负整数转换为其对应的英文表示,给定的输入是保证小于 231 - 1 的.示例:123 -> "One Hundred Twenty Three"12345 -> & ...

  5. Javascript里,想把一个整数转换成字符串,字符串长度为2

    Javascript里,想把一个整数转换成字符串,字符串长度为2.  想把一个整数转换成字符串,字符串长度为2,怎么弄?比如 1 => "01"11 => " ...

  6. 将整数转换成二进制的java小程序

    首先我们知道,将整数转换成二进制是将整数除二取余将最后除得的数和得到的余数从下向上写,组成得到的二进制数. java程序实现如下: public class ChangeToErjinzhi { pu ...

  7. *循环-01. 求整数段和【help】

    /* * Main.c * 循环-01. 求整数段和 * Created on: 2014年6月18日 * Author: Boomkeeper ***测试木有通过**** */ #include & ...

  8. AWS re:Invent(2019.01.09)

    时间:2019.01.09地点:北京国际饭店

  9. int类型的整数转换成汉字

    int类型的整数转换成汉字 一.源代码:IntegerNumberToChinese.java package cn.com.zfc.example; import java.util.Scanner ...

  10. 2407: C语言习题 整数转换成字符串

    2407: C语言习题 整数转换成字符串 Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 917  Solved: 416[Submit][Status] ...

随机推荐

  1. 接口自动化框架两大神器-正则提取器和Jsonpath提取器

    一 接口自动化框架 一 框架结构 二 结构说明 - API 用于封装被测系统的接口(用request模块封装的请求方法) - TestCase 将一个或多个接口封装成测试用例,并使用UnitTest管 ...

  2. Python从零到壹丨详解图像平滑的两种非线性滤波方法

    摘要:本文将详细讲解两种非线性滤波方法中值滤波和双边滤波. 本文分享自华为云社区<[Python从零到壹] 五十六.图像增强及运算篇之图像平滑(中值滤波.双边滤波)>,作者: eastmo ...

  3. ElasticSearch 实现分词全文检索 - term、terms查询

    数据准备 ElasticSearch 实现分词全文检索 - 测试数据准备 ElasticSearch的各种查询 不会对查询关键字进行分词 term 查询 term的查询是代表完全匹配,搜索之前不会对你 ...

  4. python-if、while、for语句的练习

    简单练习 1. 根据百分制成绩打印及格和不及格,60分一下不及格 source = float(input('请输入您的成绩:')) if 0 <= source < 60: print( ...

  5. 基于声网 Flat 构建白板插件应用“成语解谜”的最佳实践

    前言 本文作者赵杭天.他参加了"2022 RTE 编程挑战赛"--"赛道二 场景化白板插件应用开发" , 并凭借作品"成语解谜"获得了该赛道 ...

  6. ArgoCD实践之基于配置清单创建Application

    1. 什么是Application ArgoCD的两个核心概念为Application和Project,他们可分别基于Application CRD和AppProject CRD创建; 核心组件: A ...

  7. vue在js公用文件中使用this

    main.js 中 let $vue = new Vue({ router, el: '#app', render: h => h(App) }); export default $vue 在j ...

  8. ChatGPT搭建AI网站实战

    1.概述 ChatGPT是一款基于GPT-3.5架构的大型语言模型,它能够进行自然语言处理和生成对话等任务.作为一款智能化的聊天机器人,ChatGPT有着广泛的应用场景,如在线客服.智能助手.个性化推 ...

  9. ViewGroup的TouchTarget设计思维

    TouchTarget需要创建的时候先看下池子里面有没有被回收上来的,如果没有可以利用的就给你创建一个新的,否则就从池子里面把头部的那个可以利用的给你,你把你的东西放进去就行了.回收的时候就是把你放在 ...

  10. 快速搭建一个go语言web后端服务脚手架

    快速搭建一个go语言web后端服务脚手架 源码:https://github.com/weloe/go-web-demo web框架使用gin,数据操作使用gorm,访问控制使用casbin 首先添加 ...