#include <iostream>
#include <set>
using namespace std;
typedef pair< long , short > scorepair;
int main( )
{
long nStudent, id, i;
short score;
struct cmp
{
bool operator( ) ( const scorepair & a, const scorepair & b)
{
return a.second == b.second ? a.first < b.first : a.second < b.second ;
}
} ;
set< scorepair, cmp> scores;
set< scorepair> :: reverse_iterator it;
cin >> nStudent;
for ( i = 0 ; i < nStudent; i++ )
{
cin >> id >> score;
scores.insert ( scorepair( id, score) ) ;
}
i = 0 ;
for ( it = scores.rbegin ( ) ; it ! = scores.rend ( ) ; it++ , i++ )
{
cout << "Peringkat " << i + 1 << ": Absen " << it- > first << " Nilai " << it- > second << endl;
}
return 0 ;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c2V0PgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCnR5cGVkZWYgcGFpcjxsb25nLCBzaG9ydD4gc2NvcmVwYWlyOwoKaW50IG1haW4oKQp7CiAgbG9uZyBuU3R1ZGVudCwgaWQsIGk7CiAgc2hvcnQgc2NvcmU7CgogIHN0cnVjdCBjbXAKICB7CiAgICBib29sIG9wZXJhdG9yKCkoY29uc3Qgc2NvcmVwYWlyICZhLCBjb25zdCBzY29yZXBhaXIgJmIpCiAgICB7CiAgICAgIHJldHVybiBhLnNlY29uZCA9PSBiLnNlY29uZCA/IGEuZmlyc3QgPCBiLmZpcnN0IDogYS5zZWNvbmQgPCBiLnNlY29uZDsKICAgIH0KICB9OwoKICBzZXQ8c2NvcmVwYWlyLCBjbXA+IHNjb3JlczsKICBzZXQ8c2NvcmVwYWlyPjo6cmV2ZXJzZV9pdGVyYXRvciBpdDsKCiAgY2luID4+IG5TdHVkZW50OwoKICBmb3IoaSA9IDA7IGkgPCBuU3R1ZGVudDsgaSsrKQogIHsKICAgIGNpbiA+PiBpZCA+PiBzY29yZTsKCiAgICBzY29yZXMuaW5zZXJ0KHNjb3JlcGFpcihpZCwgc2NvcmUpKTsKICB9CgogIGkgPSAwOwogIGZvcihpdCA9IHNjb3Jlcy5yYmVnaW4oKTsgaXQgIT0gc2NvcmVzLnJlbmQoKTsgaXQrKywgaSsrKQogIHsKICAgIGNvdXQgPDwgIlBlcmluZ2thdCAiIDw8IGkgKyAxIDw8ICI6IEFic2VuICIgPDwgaXQtPmZpcnN0IDw8ICIgTmlsYWkgIiA8PCBpdC0+c2Vjb25kIDw8IGVuZGw7CiAgfQoKICByZXR1cm4gMDsKfQ==