ARC154 A Swap Digit 解説
解説が間違っているのではないかと思い、この記事を書くことにした。
問題文はこちら。
https://atcoder.jp/contests/arc154/tasks/arc154_a
ここで、とのどちらが小さいかを考えます。これは、の大小関係との大小関係が一致しているのであれば前者、そうでないならば後者となります。
解説に書かれているこの文自体は正しい。しかしを小さくするために、ある桁で交換するかしないか決めたいならば(交換前)と(どちらか一方の桁を交換後)のどちらが小さいかを考えることになるのではないか。これらの大小関係を調べる。
以上よりペアとペアの大小関係が一致しているとき、そうでないときの方が小さい(つまりペアとペアの大小関係が一致しているならば交換しない方がよい)。こうなると次が納得できる。
よって、のうち小さい方をにし、大きい方をにすることによってを最小化できます。
(小さい方をにし、大きい方をにすることによってもを最小化できるはず)
また、解説放送その他で紹介されている以下のやり方の方が手っ取り早い気はする:ある桁を交換してもは保たれるからとする(は定数)。このとき
ということで、は(すなわちの平均)より離れているほどは小さくなる(このことから逆に積を大きくしたいならが同じ大きさになるように寄せるとよいことがわかる)。
これを書いた動機
解説が理解できなくて数日間悩んでから、解説のある個所を変更することで納得のいく文章になったので、その箇所は書き間違いではないかと思った。適当にインターネットで検索した限りだと解説に言及している人や上で書いたようなことを言っている人が見つからなかった。友人(1人)に、具体的な個所は伏せて、間違いがあると思っているが君はどう思うかと伝えたうえで見てもらったところ彼も自分と同じ考えに至った。それで自分だけの勘違いでもなさそうだと思いここに書くことにした。もともと解説が正しく自分が理解できていない、すでに指摘している人がいる、上で自分が書いてることに間違いがあるなど、なんでもあれば知らせていただきたい。