import sys,math
def Check_Prime(n) :
if n%2 and n<3 :
return False
else :
return all(n%p for p in range(3,int(math.sqrt(n))+1,2))
def Reduce(n) :
if Check_Prime(n) :
Reduce(n-1)
else :
return n
def main(*args,**kwargs) :
for __ in range(input()) :
l,b=map(int,sys.stdin.readline().split(' '))
l=Reduce(l)
b=Reduce(b)
print l*b
if __name__ == "__main__" :
main()
Он не возвращается после того, как условие в функции Reduce()
не срабатывает.Ошибка в рекурсии
Я попытался print
значение n
внутри else
блока и успешно печатали, но он не в состоянии вернуть это значение внутри else
блока.
Отступ импорта в Python; без форматирования, мы не можем сказать, что случилось. Пожалуйста, [** прочитайте справку по редактированию **] (http://stackoverflow.com/editing-help). Вы также должны рассмотреть возможность чтения [руководства по стилю] (http://legacy.python.org/dev/peps/pep-0008/). – jonrsharpe
Отступ был на самом деле там, он просто не помещался в блок кода, поэтому StackOverflow не отображал его. Я ничего не догадывался. –
@jonrsharpe Я только что отредактировал свой пост ... теперь он отступил ... – pvkcse