2019-08-22 14:37
西安交通大学 C++ Panda_ark:我觉得需要说清楚,0个盘子只有一种放法,就是什么都不放,这也算一种方案;同理,0个苹果也只有一种放法,就是所有盘子都不放苹果。这点需要说清楚,要不然不容易理解
0 点赞 评论 收藏
分享
2019-08-20 21:30
西安交通大学 C++ 峨眉派周芷若:我也觉得是不是没处理符号,以为哪里我没理解到,所以试了一下,真的不能处理负号的;虽然能通过所有用例,只能说明他的用例中没有负号的情况。
0 点赞 评论 收藏
分享
天才哈哈哈哈:17行的for i in range(n):完全可以去掉啊
0 点赞 评论 收藏
分享
无聊时再起名:老哥,python解法是错误的。甚至都不考虑退一步的情况.
0 点赞 评论 收藏
分享
2019-08-19 16:46
西安交通大学 C++ 无聊时再起名:# 题主答案很好很简洁,但漏了若干情况。我做了一些补充和修改
def dps(n):
m1 = &(942)#39;one,two,three,four,five,six,seven,eight,nine,ten,eleven,twelve,thirteen,fourteen,fifteen,sixteen,seventeen,eighteen,nineteen'.split(&(943)#39;,')
m2 = &(944)#39;twenty,thirty,forty,fifty,sixty,seventy,eighty,ninety'.split(&(943)#39;,')
if(n<20):
return m1[n-1:n]
if(n<100):
return [m2[n//10-2]] + dps(n%10)
if(n<1000):
if n%100 == 0:
return [m1[n//100-1]]+[&(945)#39;hundred']
else:
return [m1[n//100-1]]+[&(946)#39;hundred']+[39;and']+dps(n%100)
else:
for w,p in enumerate((&(947)#39;thousand',39;million',39;billion'),1):
if(n<1000**(w+1)):
return dps(n//(1000**w))+[p]+dps(n%1000**w)
def question():
n = int(input())
return &(948)#39; '.join(dps(n)) or &(949)#39;zero'
while(True):
try:
print(question())
except:
break
0 点赞 评论 收藏
分享
创作者周榜
更多
关注他的用户也关注了: