Official

A - ACPN Editorial by Kohenyan


\(x\)\(A\) に含まれる個数を \(\mathrm{cnt}_x\) とすると、任意の \(x\) について、 \(\mathrm{cnt}_x=\mathrm{cnt}_{(x+K) \bmod M}=\mathrm{cnt}_{(x+2K) \bmod M}=\dots=\mathrm{cnt}_{(x+ZK)\bmod M} \) が成り立つ必要があります。

ここで、\(x\equiv x+ZK\ ( \bmod M)\) となる最小の自然数 \(Z\) は、\(ZK\equiv0\ (\bmod M)\) より、\(\displaystyle Z=\frac{M}{\gcd(K,M)}\) です。

つまり、\(\mathrm{cnt}_x\) の総和である \(N\)\(\displaystyle Z=\frac{M}{\gcd(K,M)}\) の倍数でなければなりません。

逆にこれが成り立っているときは条件を満たす \(A\) が容易に構成できます。例えば、\((N,K,M)=(6,2,4)\) のときは、\(A=(0,2,0,2,0,2)\) とすれば良いです。

以上から、\(N\)\(\displaystyle \frac{M}{\gcd(K,M)}\) の倍数であるかを判定すれば良いです。

posted:
last update: