Official

A - Not coprime Editorial by satashun


\(X_i\)\(Y\) が互いに素でないということはある整数 \(d \geq 2\)\(X_i, Y\) の両方が割り切れるということですが,この \(d\) としては極小なもの,つまり素数のみ考えれば良いです.

\(50\) 以下の素数は \(15\) 個あるので,素数の部分集合 \(2^{15}\) 通りを全て試して積を \(Y\) としてみて,\(X_i\) と互いに素なものがあれば棄却,として最小値を求めることができます.この解法の計算量は \(i\) 以下の素数の個数を \(p(i)\) として,\(\mathrm{O}(N2^{p(L)} \log L) (L := \max X)\) となります.

posted:
last update: