Сделай range(2, sqrt(N)) И еще попробуй понять почему так)
Спасибо. Что-то не подумал про это. N+1 — 350 сек, N//2+1 — 185 сек, round(N**0.5) — 0.024 сек
Ну да, только тебе нужно еще вот так сделать, чтобы это работало number = int(input()) new_number = number for i in range(2, round(number**0.5)): if new_number % i == 0: new_number /= i
Задача какая-то не понятная. Физмат?)
25 задание из егэ по информатике Сайт РешуЕГЭ номер задания на скрине
Обсуждают сегодня