找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

微信名称:美国米群网

微 信 号:MeetQun

微信QQ:群: 320065698

查看: 148|回复: 2
收起左侧

[刷题记录板] 273. Integer to English Words

[复制链接]

23

主题

0

精华

28

积分

新米人

Rank: 1

积分
28
发表于 11-29-2016 05:42 AM | 显示全部楼层 |阅读模式

亲!马上注册或者登录会查看更多内容!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
  1. public class Solution {
  2.     String[] LESS_THAN_20 = {"", "One", "Two", "Three", "Four", "Five", "Six", "Seven", "Eight", "Nine", "Ten", "Eleven", "Twelve", "Thirteen", "Fourteen", "Fifteen", "Sixteen", "Seventeen", "Eighteen", "Nineteen"};
  3.     String[] TENS = {"", "Ten", "Twenty", "Thirty", "Forty", "Fifty", "Sixty", "Seventy", "Eighty", "Ninety"};
  4.     String[] THOUSANDS = {"", "Thousand", "Million", "Billion"};
  5.    
  6.     public String numberToWords(int num) {
  7.         if (num==0) return "Zero";
  8.         String words="";
  9.         int i=0;
  10.         while (num!=0){
  11.             if (num%1000!=0){
  12.                 words= helper(num%1000) + THOUSANDS【i】+" " +words;
  13.             }
  14.             num/=1000;
  15.             i++;
  16.         }
  17.         return words.trim();
  18.         
  19.     }
  20.    
  21.     public String helper(int num){
  22.         if (num==0) return "";
  23.         else if (num<20){
  24.             return LESS_THAN_20[num]+" ";
  25.         }
  26.         else if (num<100){
  27.             return TENS[num/10]+" "+helper(num%10);
  28.         }
  29.         else{
  30.             return LESS_THAN_20[num/100]+" "+"Hundred "+ helper(num%100);
  31.         }
  32.     }
  33. }
复制代码

0

主题

0

精华

11

积分

新米人

Rank: 1

积分
11
发表于 11-29-2016 05:47 AM 来自美国米群网手机版 | 显示全部楼层
感谢taoqi610分享~~~
回复 支持 反对

使用道具 举报

0

主题

0

精华

2

积分

新米人

Rank: 1

积分
2
发表于 12-2-2016 03:40 AM 来自美国米群网手机版 | 显示全部楼层
感谢taoqi610分享~~~
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表