006 - GouSorter2(easy)
時間制限 1 秒 / メモリ制限 64 MB / 得点 100 / x 1 /
ストーリー
家庭科が好きなgousuperは、前回のGouSortではwoody_1227に負けてしまうことがわかった。前回の反省を活かしGouSortを変更し勝てるようにしたらしい。はたしてgousuperはwoody_1227に勝つことができるのだろうか。
問題
あなたはGouSortをして順位と名前を出力してほしい。
以下に新しくなったGouSortを定義する。
- 家庭科の点数、名前を降順にソートする。
- ただし、テストを受けた人の中に"gousuper"が含まれていた場合は以下の様にする。
- もし家庭科の点数が"gousuper"より高い人が過半数いた場合は、家庭科の点数、名前を昇順にソートする。
- いなかった場合は家庭科の点数と名前を降順にソートする。
注意:順位はGouSortの結果のみによって決定されます。
入力
一行目には、期末テストを受けた人数$N$が与えられる。続く$N$行には、名前$S_i$と家庭科の点数$A_i$が空白区切りで与えられる。
$N$ $S_1$ $A_1$ $S_2$ $A_2$ : $S_N$ $A_N$
出力
$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