素因数分解
1つの正整数に対しては試し割り法で$ O(\sqrt{N})
$ N以下の正整数についての複数のクエリに対してはSPFを利用して
前処理:$ O(NloglogN)
クエリ:$ O(logN)
SPF(最小素因数)の配列は、エラトステネスの篩でboolを入れたところに素因数を入れると作れる。ある数$ Kに対して、$ KをSPFで割る→商を$ K_1としてそのSPFで割る……と繰り返せば高速に素因数分解ができる。
リファレンス
素因数分解のアルゴリズム / アルゴリズムロジック