AtCoder Regular Contest 158 A - +3 +5 +7
メモ
問題を言い換えると
X, Y, Zが与えられて
これらに0, 1, 2の順列を足してすべての合計を同じにする操作回数の最小化を求める問題になる
簡単のためにX<=Y<=Zとすると
Z-X, Z-Y, 0
足していって差が上になるようなものを作れるか考える
以後A = Z-X, B = Z-Yとする
A, B, 0
ここで0,1,2を足すことを考えるよりも-1,0,1を足すことを考えた方が
全体の合計が不変になるため見通しが良かった
//
0,1,2 を足す場合は、
A, B, 0(A>=B)で、A <= 2Bなら一回も無駄なく作ることができる
A>2Bなら、(+2,+1,+0)をB回やって
(+2+1, +1+2, +0+0)を必要な回数やればいい
類題
不変量を考えて、-1, +1, 0の操作に帰着する