006 - GouSorter2(easy)
時間制限 1 秒 / メモリ制限 64 MB / 得点 100 / x 5 /
ストーリー
家庭科が好きなgousuperは、前回のGouSortではwoody_1227に負けてしまうことがわかった。前回の反省を活かしGouSortを変更し勝てるようにしたらしい。はたしてgousuperはwoody_1227に勝つことができるのだろうか。
問題
あなたはGouSortをして順位と名前を出力してほしい。
以下に新しくなったGouSortを定義する。
- 家庭科の点数、名前を降順にソートする。
- ただし、テストを受けた人の中に"gousuper"が含まれていた場合は以下の様にする。
- もし家庭科の点数が"gousuper"より高い人が過半数いた場合は、家庭科の点数、名前を昇順にソートする。
- いなかった場合は家庭科の点数と名前を降順にソートする。
注意:順位はGouSortの結果のみによって決定されます。
入力
一行目には、期末テストを受けた人数Nが与えられる。続くN行には、名前Siと家庭科の点数Aiが空白区切りで与えられる。
N S1 A1 S2 A2 : SN AN
出力
N人分の順位と名前を空白区切りで出力しなさい。
制約
- 2≦N≦100
- 0≦A_i≦10^{18}
- S_iの長さは、1以上100以下
- S_iはすべて異なる。
- 名前の中で"gousuper"は最大でも1つしか与えられない。
入出力例
入力例1
5 gousuper 10000 woody_1227 10010 horichan 12271003 YUYA 10397 NI-TO 1
出力例1
1 NI-TO 2 gousuper 3 woody_1227 4 YUYA 5 horichan