Two Arrays
考察
asum := の総和
bsum := の総和
とします.
をし,をするとき,全体で見ればasumを,bsumをすることになります.
そして,が等しい数列ならばasum=bsumになる.
2つの数列が等しくなるまでに行う操作の回数をnumとすると,
asum + 2num = bsum + num
num = bsum - asum
です.
このnumより操作回数が多いことはあり得ません.
num回以降の操作では,の方が一方的に増えていくためです.
次に,任意のに対して,)]が以上になるために必要な操作の最小回数を数えます.
・のとき,回
・のとき,回
の操作が最低限必要.
このいずれもがnum以下ならば良いらしい(?)
そして実は上の2つの条件の内,1つ目だけで十分らしい.
恐らく,
を,を, を,を とすれば.
この2つの操作後にはが,が,がのようになって,結果としてはは変えずに番目のみ変更することができることに関係していそう.
未来の私,頑張れよ...