За 20 минут можно решить только с помощью
алгоритма Шора.
Только есть маленькая деталь - вам понадобится квантовый компьютер с достаточным числом кубитов, чтобы работать с данным N.
А если без шуток, то могу подкинуть идею, где можно сделать научный эксперимент, хоть и получить отрицательный результат.
Берете нейронную сеть, такую, чтобы на входе подать побитово число N.
Выход нейронки нужно сделать так, чтобы она побитово отражала два числа, такой же разрядностью как N.
Эти два числа - интервал, в котором с большой вероятностью, по мнению нейронки, будет находится одно из чисел P или Q.
Обучаете нейронную сеть на N той разрядности, по которой построен ее побитовый вход. Даете возможность в ходе обучения варьировать различной ширины интервала на выходе, оцениваете ошибки попадания интервала в известное P при проверке результата обучения.
Из этой научной работы нужно вытащить график - зависимость ширины интервала факторизуемого числа от вероятности обученной нейронки определять верно этот интервал. Возможно, в графике добавите третью ось - глубина нейронных слоев.
Сделаете эту работу и вас кандидатская в кармане.