题解 | #学英语#
学英语
https://www.nowcoder.com/practice/1364723563ab43c99f3d38b5abef83bc
database = {
0: "zero",
1: "one",
2: "two",
3: "three",
4: "four",
5: "five",
6: "six",
7: "seven",
8: "eight",
9: "nine",
10: "ten",
11: "eleven",
12: "twelve",
13: "thirteen",
14: "fourteen",
15: "fifteen",
16: "sixteen",
17: "seventeen",
18: "eighteen",
19: "nineteen",
20: "twenty",
30: "thirty",
40: "forty",
50: "fifty",
60: "sixty",
70: "seventy",
80: "eighty",
90: "ninety",
100: "hundred",
1000: "thousand",
1000000: "million",
1000000000: "billion",
1000000000000: "trillion",
}
input_num = input()
if len(input_num) == 1:
print(database[int(input_num)])
elif len(input_num) == 2:
if int(input_num) in database:
print(database[int(input_num)])
else:
shiwei = (int(input_num) // 10) * 10
gewei = int(input_num) % 10
print("%s %s" % (database[shiwei], database[gewei]))
elif len(input_num) == 3:
baiwei = int(input_num) // 100
baiweiyushu = int(input_num) % 100
if baiweiyushu == 0:
print("%s hundred" % (database[baiwei]))
elif baiweiyushu in database:
print("%s hundred and %s" % (database[baiwei], database[baiweiyushu]))
else:
shiwei = (baiweiyushu // 10) * 10
gewei = baiweiyushu % 10
print(
"%s hundred and %s %s"
% (database[baiwei], database[shiwei], database[gewei])
)
elif len(input_num) == 4:
qianwei = int(input_num) // 1000
qianweiyushu = int(input_num) % 1000
if qianweiyushu == 0:
print("%s thousand" % (database[qianwei]))
else:
baiwei = qianweiyushu // 100
baiweiyushu = qianweiyushu % 100
if baiwei == 0:
if baiweiyushu in database:
print("%s thousand %s" % (database[qianwei], database[baiweiyushu]))
else:
shiwei = (baiweiyushu // 10) * 10
gewei = baiweiyushu % 10
print(
"%s thousand %s %s"
% (database[qianwei], database[shiwei], database[gewei])
)
else:
if baiweiyushu == 0:
print("%s thousand %s hundred" % (database[qianwei], database[baiwei]))
elif baiweiyushu in database:
print(
"%s thousand %s hundred and %s"
% (database[qianwei], database[baiwei], database[baiweiyushu])
)
else:
shiwei = (baiweiyushu // 10) * 10
gewei = baiweiyushu % 10
print(
"%s thousand %s hundred and %s %s"
% (
database[qianwei],
database[baiwei],
database[shiwei],
database[gewei],
)
)
elif len(input_num) == 5:
qianwei = int(input_num) // 1000
qianweiyushu = int(input_num) % 1000
if qianwei in database:
if qianweiyushu == 0:
print("%s thousand" % (database[qianwei]))
else:
baiwei = qianweiyushu // 100
baiweiyushu = qianweiyushu % 100
if baiwei == 0:
if baiweiyushu in database:
print("%s thousand %s" % (database[qianwei], database[baiweiyushu]))
else:
shiwei = (baiweiyushu // 10) * 10
gewei = baiweiyushu % 10
print(
"%s thousand %s %s"
% (database[qianwei], database[shiwei], database[gewei])
)
else:
if baiweiyushu == 0:
print(
"%s thousand %s hundred" % (database[qianwei], database[baiwei])
)
elif baiweiyushu in database:
print(
"%s thousand %s hundred and %s"
% (database[qianwei], database[baiwei], database[baiweiyushu])
)
else:
shiwei = (baiweiyushu // 10) * 10
gewei = baiweiyushu % 10
print(
"%s thousand %s hundred and %s %s"
% (
database[qianwei],
database[baiwei],
database[shiwei],
database[gewei],
)
)
else:
qianweishiwei = (qianwei // 10) * 10
qianweigewei = qianwei % 10
if qianweiyushu == 0:
print("%s %s thousand" % (database[qianweishiwei], database[qianweigewei]))
else:
baiwei = qianweiyushu // 100
baiweiyushu = qianweiyushu % 100
if baiwei == 0:
if baiweiyushu in database:
print(
"%s %s thousand %s"
% (
database[qianweishiwei],
database[qianweigewei],
database[baiweiyushu],
)
)
else:
shiwei = (baiweiyushu // 10) * 10
gewei = baiweiyushu % 10
print(
"%s %s thousand %s %s"
% (
database[qianweishiwei],
database[qianweigewei],
database[shiwei],
database[gewei],
)
)
else:
if baiweiyushu == 0:
print(
"%s %s thousand %s hundred"
% (
database[qianweishiwei],
database[qianweigewei],
database[baiwei],
)
)
elif baiweiyushu in database:
print(
"%s %s thousand %s hundred and %s"
% (
database[qianweishiwei],
database[qianweigewei],
database[baiwei],
database[baiweiyushu],
)
)
else:
shiwei = (baiweiyushu // 10) * 10
gewei = baiweiyushu % 10
print(
"%s %s thousand %s hundred and %s %s"
% (
database[qianweishiwei],
database[qianweigewei],
database[baiwei],
database[shiwei],
database[gewei],
)
)
elif len(input_num) == 6:
qianwei = int(input_num) // 1000
qianweibaiwei = qianwei // 100
qianweibaiweiyushu = qianwei % 100
qianweishiwei = (qianweibaiweiyushu // 10) * 10
qianweigewei = qianweibaiweiyushu % 10
qianweiyushu = int(input_num) % 1000
if qianweiyushu == 0:
if qianweibaiweiyushu == 0:
print("%s hundred thousand" % (database[qianweibaiwei]))
elif qianweibaiweiyushu in database:
print(
"%s hundred and %s thousand"
% (database[qianweibaiwei], database[qianweibaiweiyushu])
)
else:
print(
"%s hundred and %s %s thousand"
% (
database[qianweibaiwei],
database[qianweishiwei],
database[qianweigewei],
)
)
else:
baiwei = qianweiyushu // 100
baiweiyushu = qianweiyushu % 100
if qianweibaiweiyushu == 0:
if baiwei == 0:
if baiweiyushu in database:
print(
"%s hundred thousand %s"
% (database[qianweibaiwei], database[baiweiyushu])
)
else:
shiwei = (baiweiyushu // 10) * 10
gewei = baiweiyushu % 10
print(
"%s hundred thousand %s %s"
% (database[qianweibaiwei], database[shiwei], database[gewei])
)
else:
if baiweiyushu == 0:
print(
"%s hundred thousand %s hundred"
% (database[qianweibaiwei], database[baiwei])
)
elif baiweiyushu in database:
print(
"%s hundred thousand %s hundred and %s"
% (
database[qianweibaiwei],
database[baiwei],
database[baiweiyushu],
)
)
else:
shiwei = (baiweiyushu // 10) * 10
gewei = baiweiyushu % 10
print(
"%s hundred thousand %s hundred and %s %s"
% (
database[qianweibaiwei],
database[baiwei],
database[shiwei],
database[gewei],
)
)
elif qianweibaiweiyushu in database:
if baiwei == 0:
if baiweiyushu in database:
print(
"%s hundred and %s thousand %s"
% (
database[qianweibaiwei],
database[qianweibaiweiyushu],
database[baiweiyushu],
)
)
else:
shiwei = (baiweiyushu // 10) * 10
gewei = baiweiyushu % 10
print(
"%s hundred and %s thousand %s %s"
% (
database[qianweibaiwei],
database[qianweibaiweiyushu],
database[shiwei],
database[gewei],
)
)
else:
if baiweiyushu == 0:
print(
"%s hundred and %s thousand %s hundred"
% (
database[qianweibaiwei],
database[qianweibaiweiyushu],
database[baiwei],
)
)
elif baiweiyushu in database:
print(
"%s hundred and %s thousand %s hundred and %s"
% (
database[qianweibaiwei],
database[qianweibaiweiyushu],
database[baiwei],
database[baiweiyushu],
)
)
else:
shiwei = (baiweiyushu // 10) * 10
gewei = baiweiyushu % 10
print(
"%s hundred and %s thousand %s hundred and %s %s"
% (
database[qianweibaiwei],
database[qianweibaiweiyushu],
database[baiwei],
database[shiwei],
database[gewei],
)
)
else:
if baiwei == 0:
if baiweiyushu in database:
print(
"%s hundred and %s %s thousand %s"
% (
database[qianweibaiwei],
database[qianweishiwei],
database[qianweigewei],
database[baiweiyushu],
)
)
else:
shiwei = (baiweiyushu // 10) * 10
gewei = baiweiyushu % 10
print(
"%s hundred and %s %s thousand %s %s"
% (
database[qianweibaiwei],
database[qianweishiwei],
database[qianweigewei],
database[shiwei],
database[gewei],
)
)
else:
if baiweiyushu == 0:
print(
"%s hundred and %s %s thousand %s hundred"
% (
database[qianweibaiwei],
database[qianweishiwei],
database[qianweigewei],
database[baiwei],
)
)
elif baiweiyushu in database:
print(
"%s hundred and %s %s thousand %s hundred and %s"
% (
database[qianweibaiwei],
database[qianweishiwei],
database[qianweigewei],
database[baiwei],
database[baiweiyushu],
)
)
else:
shiwei = (baiweiyushu // 10) * 10
gewei = baiweiyushu % 10
print(
"%s hundred and %s %s thousand %s hundred and %s %s"
% (
database[qianweibaiwei],
database[qianweishiwei],
database[qianweigewei],
database[baiwei],
database[shiwei],
database[gewei],
)
)
elif len(input_num) == 7:
million = int(input_num[0])
input_num = input_num[1:]
qianwei = int(input_num) // 1000
qianweibaiwei = qianwei // 100
qianweibaiweiyushu = qianwei % 100
qianweishiwei = (qianweibaiweiyushu // 10) * 10
qianweigewei = qianweibaiweiyushu % 10
qianweiyushu = int(input_num) % 1000
if int(input_num) == 0:
print("%s million" % (database[million]))
elif int(input_num[0]) == 0:
input_num = input_num[1:]
qianwei = int(input_num) // 1000
qianweiyushu = int(input_num) % 1000
if qianwei in database:
if qianweiyushu == 0:
print("%s million %s thousand" % (database[million], database[qianwei]))
else:
baiwei = qianweiyushu // 100
baiweiyushu = qianweiyushu % 100
if baiwei == 0:
if baiweiyushu in database:
print(
"%s million %s thousand %s"
% (
database[million],
database[qianwei],
database[baiweiyushu],
)
)
else:
shiwei = (baiweiyushu // 10) * 10
gewei = baiweiyushu % 10
print(
"%s million %s thousand %s %s"
% (
database[million],
database[qianwei],
database[shiwei],
database[gewei],
)
)
else:
if baiweiyushu == 0:
print(
"%s million %s thousand %s hundred"
% (database[million], database[qianwei], database[baiwei])
)
elif baiweiyushu in database:
print(
"%s million %s thousand %s hundred and %s"
% (
database[million],
database[qianwei],
database[baiwei],
database[baiweiyushu],
)
)
else:
shiwei = (baiweiyushu // 10) * 10
gewei = baiweiyushu % 10
print(
"%s million %s thousand %s hundred and %s %s"
% (
database[million],
database[qianwei],
database[baiwei],
database[shiwei],
database[gewei],
)
)
else:
qianweishiwei = (qianwei // 10) * 10
qianweigewei = qianwei % 10
if qianweiyushu == 0:
print(
"%s million %s %s thousand"
% (
database[million],
database[qianweishiwei],
database[qianweigewei],
)
)
else:
baiwei = qianweiyushu // 100
baiweiyushu = qianweiyushu % 100
if baiwei == 0:
if baiweiyushu in database:
print(
"%s million %s %s thousand %s"
% (
database[million],
database[qianweishiwei],
database[qianweigewei],
database[baiweiyushu],
)
)
else:
shiwei = (baiweiyushu // 10) * 10
gewei = baiweiyushu % 10
print(
"%s million %s %s thousand %s %s"
% (
database[million],
database[qianweishiwei],
database[qianweigewei],
database[shiwei],
database[gewei],
)
)
else:
if baiweiyushu == 0:
print(
"%s million %s %s thousand %s hundred"
% (
database[million],
database[qianweishiwei],
database[qianweigewei],
database[baiwei],
)
)
elif baiweiyushu in database:
print(
"%s million %s %s thousand %s hundred and %s"
% (
database[million],
database[qianweishiwei],
database[qianweigewei],
database[baiwei],
database[baiweiyushu],
)
)
else:
shiwei = (baiweiyushu // 10) * 10
gewei = baiweiyushu % 10
print(
"%s million %s %s thousand %s hundred and %s %s"
% (
database[million],
database[qianweishiwei],
database[qianweigewei],
database[baiwei],
database[shiwei],
database[gewei],
)
)
else:
if qianweiyushu == 0:
if qianweibaiweiyushu == 0:
print(
"%s million %s hundred thousand"
% (database[million], database[qianweibaiwei])
)
elif qianweibaiweiyushu in database:
print(
"%s million %s hundred and %s thousand"
% (
database[million],
database[qianweibaiwei],
database[qianweibaiweiyushu],
)
)
else:
print(
"%s million %s hundred and %s %s thousand"
% (
database[million],
database[qianweibaiwei],
database[qianweishiwei],
database[qianweigewei],
)
)
else:
baiwei = qianweiyushu // 100
baiweiyushu = qianweiyushu % 100
if qianweibaiweiyushu == 0:
if baiwei == 0:
if baiweiyushu in database:
print(
"%s million %s hundred thousand %s"
% (
database[million],
database[qianweibaiwei],
database[baiweiyushu],
)
)
else:
shiwei = (baiweiyushu // 10) * 10
gewei = baiweiyushu % 10
print(
"%s million %s hundred thousand %s %s"
% (
database[million],
database[qianweibaiwei],
database[shiwei],
database[gewei],
)
)
else:
if baiweiyushu == 0:
print(
"%s million %s hundred thousand %s hundred"
% (
database[million],
database[qianweibaiwei],
database[baiwei],
)
)
elif baiweiyushu in database:
print(
"%s million %s hundred thousand %s hundred and %s"
% (
database[million],
database[qianweibaiwei],
database[baiwei],
database[baiweiyushu],
)
)
else:
shiwei = (baiweiyushu // 10) * 10
gewei = baiweiyushu % 10
print(
"%s million %s hundred thousand %s hundred and %s %s"
% (
database[million],
database[qianweibaiwei],
database[baiwei],
database[shiwei],
database[gewei],
)
)
elif qianweibaiweiyushu in database:
if baiwei == 0:
if baiweiyushu in database:
print(
"%s million %s hundred and %s thousand %s"
% (
database[million],
database[qianweibaiwei],
database[qianweibaiweiyushu],
database[baiweiyushu],
)
)
else:
shiwei = (baiweiyushu // 10) * 10
gewei = baiweiyushu % 10
print(
"%s million %s hundred and %s thousand %s %s"
% (
database[million],
database[qianweibaiwei],
database[qianweibaiweiyushu],
database[shiwei],
database[gewei],
)
)
else:
if baiweiyushu == 0:
print(
"%s million %s hundred and %s thousand %s hundred"
% (
database[million],
database[qianweibaiwei],
database[qianweibaiweiyushu],
database[baiwei],
)
)
elif baiweiyushu in database:
print(
"%s million %s hundred and %s thousand %s hundred and %s"
% (
database[million],
database[qianweibaiwei],
database[qianweibaiweiyushu],
database[baiwei],
database[baiweiyushu],
)
)
else:
shiwei = (baiweiyushu // 10) * 10
gewei = baiweiyushu % 10
print(
"%s million %s hundred and %s thousand %s hundred and %s %s"
% (
database[million],
database[qianweibaiwei],
database[qianweibaiweiyushu],
database[baiwei],
database[shiwei],
database[gewei],
)
)
else:
if baiwei == 0:
if baiweiyushu in database:
print(
"%s million %s hundred and %s %s thousand %s"
% (
database[million],
database[qianweibaiwei],
database[qianweishiwei],
database[qianweigewei],
database[baiweiyushu],
)
)
else:
shiwei = (baiweiyushu // 10) * 10
gewei = baiweiyushu % 10
print(
"%s million %s hundred and %s %s thousand %s %s"
% (
database[million],
database[qianweibaiwei],
database[qianweishiwei],
database[qianweigewei],
database[shiwei],
database[gewei],
)
)
else:
if baiweiyushu == 0:
print(
"%s million %s hundred and %s %s thousand %s hundred"
% (
database[million],
database[qianweibaiwei],
database[qianweishiwei],
database[qianweigewei],
database[baiwei],
)
)
elif baiweiyushu in database:
print(
"%s million %s hundred and %s %s thousand %s hundred and %s"
% (
database[million],
database[qianweibaiwei],
database[qianweishiwei],
database[qianweigewei],
database[baiwei],
database[baiweiyushu],
)
)
else:
shiwei = (baiweiyushu // 10) * 10
gewei = baiweiyushu % 10
print(
"%s million %s hundred and %s %s thousand %s hundred and %s %s"
% (
database[million],
database[qianweibaiwei],
database[qianweishiwei],
database[qianweigewei],
database[baiwei],
database[shiwei],
database[gewei],
)
)
