什么 一世 会见 是 下面的代码问题: https://www.patest.cn/contests/pat-a-practise/1001
计算a + b并以标准格式输出总和 - 也就是说,数字必须用逗号分隔成三个一组(除非少于四个数字)。
输入
每个输入文件包含一个测试用例。每个案例包含一对整数a和b,其中-1000000< = a,b< = 1000000.数字用空格分隔。
输出
对于每个测试用例,您应该在一行中输出a和b的总和。总和必须以标准格式书写。
示例输入
-1000000 9
示例输出
-999,991
这是我的代码:
if __name__ == "__main__":
aline = input()
astr,bstr = aline.strip().split()
a,b = int(astr),int(bstr)
sum = a + b
sumstr= str(sum)
result = ''
while sumstr:
sumstr, aslice = sumstr[:-3], sumstr[-3:]
if sumstr:
result = ',' + aslice + result
else:
result = aslice + result
print(result)
测试结果结果是:
时间(时间)结果(测试结果)得分(得分)题目(问题编号)
语言(programe language)用时(ms)[time consume]内存(kB)[memory]用户[user]
8月22日15:46 部分正确[Partial Correct] (为什么?!!!)11 1001
Python(python3 3.4.2)25 3184 polar9527
测试点[测试点]结果[结果]用时(ms)[耗时]内存(kB)[记忆]得分[得分] /满分[完全信用]
0答案错误[错] 25 3056 0/9
1答案正确[正确] 19 3056 1/1
10答案正确[正确] 18 3184 1/1
11答案正确[正确] 19 3176 1/1
2答案正确[正确] 17 3180 1/1
3答案正确[正确] 16 3056 1/1
4答案正确[正确] 14 3184 1/1
5答案正确[正确] 17 3056 1/1
6答案正确[正确] 19 3168 1/1
7答案正确[更正] 22 3184 1/1
8答案正确[正确] 21 3164 1/1
9答案正确[正确] 15 3184 1/1
答案 0 :(得分:3)
我可以给你一个与答案不匹配的简单,当你在输入中输入-1000000,9作为a,b时,你会得到 - ,999,991。这是错误的。
为了得到正确的答案,你真的应该在python中了解格式。
要解决这个问题,你可以像这样写代码。
if __name__ == "__main__":
aline = input()
astr,bstr = aline.strip().split()
a,b = int(astr),int(bstr)
sum = a + b
print('{:,}'.format(sum))
答案 1 :(得分:1)
注意输入-1000和1时代码的行为。您需要处理减号,因为它不是数字。