python输入一个数字,输出这个数字的末六位
python如何输入一个数字,输出这个数字的末六位,如果出现0则不输出0 本帖最后由 tommyyu 于 2023-1-1 18:52 编辑输出该数除以1000000的余数即可。 取余得末位,然后整除10去掉末尾,此时原数的倒数第二位变成末位,重复上述步骤直到取完末六位 tommyyu 发表于 2023-1-1 18:40
输出该数除以1000000的余数即可。
那0呢 tommyyu 发表于 2023-1-1 18:40
输出该数除以1000000的余数即可。
def fac(m):
while m >= 0:
if m == 0:
return 1
else:
return (m * fac(m - 1))
n = int(input())
s = 0
for i in range(1, n + 1):
s += fac(i)
print(s%1000000)
爱意随风起9306 发表于 2023-1-1 18:58
那0呢
>>> 1012345 % 1000000
12345
tommyyu 发表于 2023-1-1 18:40
输出该数除以1000000的余数即可。
这样好像不行吧 爱意随风起9306 发表于 2023-1-1 19:00
这样好像不行吧
输出的不包含前导0 tommyyu 发表于 2023-1-1 19:01
输出的不包含前导0
https://thumbnail1.baidupcs.com/thumbnail/ac9b8b2b5pdefdba9da73708670cab23?fid=1590253992-250528-496167287402302&rt=pr&sign=FDTAER-DCb740ccc5511e5e8fedcff06b081203-YPZklwdfxUYuOwwDcpkdhpsaj3k%3d&expires=8h&chkbd=0&chkv=0&dp-logid=18413492466370022&dp-callid=0&time=1672570800&size=c1463_u915&quality=90&vuk=1590253992&ft=image&autopolicy=1 tommyyu 发表于 2023-1-1 19:01
输出的不包含前导0
{:5_99:} 爱意随风起9306 发表于 2023-1-1 19:03
取摸后(%1000000)输出确实满足题目要求。 tommyyu 发表于 2023-1-1 19:04
取摸后(%1000000)输出确实满足题目要求。
确实是满足,但是无法通过 爱意随风起9306 发表于 2023-1-1 19:05
确实是满足,但是无法通过
是TLE么 tommyyu 发表于 2023-1-1 19:06
是TLE么
oj 爱意随风起9306 发表于 2023-1-1 19:06
oj
{:10_282:}我的意思是报错形式是不是TLE
在n>=25时,输出值均为40313,因为25!为15511210043330985984000000,其后面有6个0,不会影响后六位数字,同理,n!(n>=25)也不会影响后六位数字。因此,在n>=25时,输出为一个固定值,也就是40313。def fac(m):
while m >= 0:
if m == 0:
return 1
else:
return (m * fac(m - 1))
n = int(input())
if n >= 25:
print(40313)
else:
print(sum()%100000) tommyyu 发表于 2023-1-1 19:11
我的意思是报错形式是不是TLE
在n>=25时,输出值均为40313,因为25!为15511210043330985984 ...
https://thumbnail1.baidupcs.com/thumbnail/7f1e57531p3c11fca8c8557c32d191b7?fid=1590253992-250528-1030170177742333&rt=pr&sign=FDTAER-DCb740ccc5511e5e8fedcff06b081203-cL60W5R7pdNmjAxJkamfdQFMgbg%3d&expires=8h&chkbd=0&chkv=0&dp-logid=18610459475910171&dp-callid=0&time=1672570800&size=c1463_u915&quality=90&vuk=1590253992&ft=image&autopolicy=1 tommyyu 发表于 2023-1-1 19:11
我的意思是报错形式是不是TLE
在n>=25时,输出值均为40313,因为25!为15511210043330985984 ...
破网站,连错哪都不知道 爱意随风起9306 发表于 2023-1-1 19:15
有一个地方写错了{:10_282:}应该是940313,我算成后五位了def fac(m):
while m >= 0:
if m == 0:
return 1
else:
return (m * fac(m - 1))
n = int(input())
if n >= 25:
print(940313)
else:
print(sum()%1000000) tommyyu 发表于 2023-1-1 19:17
有一个地方写错了应该是940313,我算成后五位了
不行,过不了 爱意随风起9306 发表于 2023-1-1 19:20
不行,过不了
在pycharm连10都运算不了
页:
[1]
2