题解 | #学英语#
学英语
https://www.nowcoder.com/practice/1364723563ab43c99f3d38b5abef83bc
dic = {
"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": "thriteen",
"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",
}
def one(s):
if s != "0":
return dic[s] + " "
return ""
def ten(s):
out = ""
if s[0] != "0":
if s[0] == "1":
out += dic[s[0] + s[1]] + " "
else:
out += dic[s[0] + "0"] + " " + one(s[1])
else:
out += one(s[1])
return out
def hundred(s):
out = ""
if len(s) == 3:
flag = True
if s[0] != "0":
out += dic[s[0]] + " " + "hundred" + " "
else:
flag = False
if s[1] != "0" or s[2] != "0":
if flag:
out += "and" + " "
out += ten(s[1] + s[2])
if len(s) == 2:
out += ten(s[0] + s[1])
if len(s) == 1:
out += one(s)
return out
n = input()
s = ""
if len(n) >= 10:
s += hundred(n[:-9]) + "billion" + " "
n = n[-9:]
if len(n) >= 7:
s += hundred(n[:-6]) + "million" + " "
n = n[-6:]
if len(n) >= 4:
s += hundred(n[:-3]) + "thousand" + " "
n = n[-3:]
s += hundred(n)
print(s)
查看15道真题和解析
OPPO公司福利 1225人发布