Получив вопрос, я пытаюсь его решить и предполагаю, что нашел алгоритм. Теперь я делаю анализ временной сложности для этого алгоритма и обнаруживаю, что он работает за полиномиальное время. Теперь как я могу убедиться, что мой алгоритм работает только за полиномиальное, а не за псевдополиномиальное время?
Или просто я могу задать свой вопрос так
Есть ли способ узнать, требует ли алгоритм псевдополиномиального времени?
Например:
function isPrime(n):
for i from 2 to n - 1:
if (n mod i) = 0, return false
return true
Мы думаем, что приведенное выше решение работает за полиномиальное время, но на самом деле это решение имеет псевдополиномиальную сложность.