ABC261F - Sorting Color Balls

考え方だけメモ.

考え方

色の区別がない場合に必要な入れ替え操作の回数は,「自分より小さいのに自分よりあとに現れる数」の(すべての「自分」に関する)総和となる(AtCoder Beginner Contest 261 - YouTube).

後ろから見ていけばBITで反転数(転倒数)を計算できる.

まずは色を考えずに反転数(転倒数)を計算して,色が同じ反転数(転倒数)が余計にカウントされているのでそれぞれ求めて引けば良い.

回答例

色ごとにBITを用意するとだめっぽい(RE).