问题描述:
def mfp(m)
sum = 0
for i in 1..m
num = i
multi = 1
while num > 0
if num % 10 > 0
multi *= (num % 10)
end
num = num / 10
end
sum += multi
end
ori = sum
flag = 2
res = 1
while sum > 2
if sum % flag == 0
sum /= flag
res = flag
else
flag += 1
end
end
if res == ori
return 1
else
return res
end
end
提交评测后挂了一个测试点,实在不解原因。