ARC111 C - Too Heavy (600)
自分の体重以上のものを持つと動けなくなることを考えると体重の軽い人から操作するのがよさそう
重い人の操作中に思いものを不意に持たされると困る
先にどの荷物を誰が持っているかの配列を用意しておく
体重の昇順で以下を行う
既に正しい荷物を持っていたら何もしない
体重以上の荷物を持っていたり、交換する相手の荷物が体重以上だったりしたら交換不可能なので条件を満たせない
交換したペアを記録
持っている荷物とどの荷物を誰が持っているかの情報をそれぞれswap
最後に記録したペアを出力
体重順のソートがボトルネックで$ O(N \log N)