폴라드 로가 뭔지는 좋은 블로그 많으니까 찾아보세요 설명하기 귀찮음
대충 좋은 시복에 수 소인수분해해주는 알고리즘임
가능한 모든 약수를 구하는 방법을 $\text{O}(2^N)$으로 구현하는 짓을 했었는데
$\text{O}(N^3\log N)$에 가능한 방법이 있음.
vl primes; // 폴라드 로 결과
set<i64> s; s.insert(1);
for(i64 i : primes) {
set<i64> nxt = s;
for(i64 j : s) nxt.insert(i * j);
s = nxt;
}
이 문제에서 사용함.