プロコン参加記

プロコンに参加していた時期もありました。虚空に向かって語りかけます。

Codeforces Round #497 (Div. 2)

3完/5問でした

Rate:1434→1408

毎回完答数増えてるのにレート減っていくのなんで?

 

A問題

題材がローマ字と日本人に優しい設定。1文字ずつ隣の文字を確認してルールに当てはまっているかどうか確認すればいいだけ。

 

B問題

長方形を回転させて降順にできるかどうか判定する問題。できる限り長い辺を縦にするように並べていって、2辺とも前の高さよりも長い長方形がなければYES、そうでなければNO。

 

C問題

数列を並べ替えて元あった数よりも並べ替えた後に大きくなった数の個数を最大化する問題。辞書型で数の個数をカウントしておき、ある数に最も近いある数よりも大きい数で置き換えていくことで最大値が求まる。置き換えた数は置き換えた個数だけ辞書の値を更新していくとわかりやすい。

ex)

 a = [10,1,1,1,5,5,3]

dict = {1:3,3:1,5:2,10:1}

↓ 1を置き換え

dict = {1:3,3:0,5:0,10:1}

↓ 3を置き換え

dict = {1:3,3:0,5:0,10:0} max(a)の値が0になったら終了