您的位置:首页 > 编程语言 > Java开发

1002. 写出这个数 (20) JAVA

2015-12-08 11:19 453 查看


1002. 写出这个数 (20)

时间限制

400 ms

内存限制

65536 kB

代码长度限制

8000 B

判题程序

Standard

作者

CHEN, Yue

读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字。

输入格式:每个测试输入包含1个测试用例,即给出自然数n的值。这里保证n小于10100。

输出格式:在一行内输出n的各位数字之和的每一位,拼音数字间有1 空格,但一行中最后一个拼音数字后没有空格。
输入样例:
1234567890987654321123456789

输出样例:

yi san wu

提交代码

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class Main {
public static void main(String[] args) {
String str = "";
Scanner input = new Scanner(System.in);
str = input.next();
System.out.println(out(str));

}

public static String out(String string) {

List<String> list = new ArrayList<String>();
list.add("ling");
list.add("yi");
list.add("er");
list.add("san");
list.add("si");
list.add("wu");
list.add("liu");
list.add("qi");
list.add("ba");
list.add("jiu");

int index = 0;
int sum = 0;
String string2 = "";
StringBuilder temp = new StringBuilder();

while (index++ < string.length()) {
sum += Integer.parseInt(string.substring(index - 1, index));
}
string2 = String.valueOf(sum);
index = 0;
while (index++ < string2.length()) {
temp.append(list.get(Integer.parseInt(string2.substring(index - 1, index))));
temp.append(" ");
}

return temp.toString().trim();
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: