| For All Solvers
OMC128

OMC128(D) - 感覚的な説明

ユーザー解説 by noppi_kun

 (公式解説と同様に) f(x)f(x) が最小値をとるのは x=a50x=-a_{50} で, k=1100aka50=1104\displaystyle\sum_{k=1}^{100} |a_k-a_{50}|=1104 である. a1a50a_1-a_{50} を最大化したい(他との差別化を図ることで a1a_1 を大きくする). k=1100ak\displaystyle\sum_{k=1}^{100} a_k100100 の倍数なので k=1100aka50\displaystyle\sum_{k=1}^{100} a_k-a_{50}100100 の倍数であることに留意する.
(a1a50,a2a50,,a100a50)=(1104,0,,0)(a_1-a_{50}, a_2-a_{50}, \dots ,a_{100}-a_{50})=(1104,0,\dots,0) 上のときそれらの和は 100100 で割ると 44 余るので割り切れるように調整すると (a1a50,a2a50,,a100a50)=(1102,0,,2)(a_1-a_{50}, a_2-a_{50}, \dots ,a_{100}-a_{50})=(1102,0,\dots,-2) などが見つかる. これを k=1100ak=10000\displaystyle\sum_{k=1}^{100} a_k=10000 になるように調整すると a50=89a_{50}=89 となり, このとき a1=1102+89=1191a_1=1102+89=\textbf{1191} .