/*
#include <stdlib.h>
int main() if(k==1)
{
return memo[k][n]=k+f(k-1,n);
}
if(n==1)
{
return memo[k][n]=n+f(k,n-1);
}
{
printf("Hello world!\n");
return 0;
}
*/
//return f(k,n-1)+f(k-1,n);
/*#include <stdio.h>
int memo[14][14]={0};
int f(int k,int n)
{
if(k==0)
{
return n;
}
if(n==0)
{
return 0;
}
return memo[k][n] = f(k,n-1)+f(k-1,n);
}
int main()
{
int k,n;
while( scanf("%d %d", &k, &n) != EOF )
printf("%d\n", f(k, n));
return 0;
}
60 34 55 100 90 76 60 90 80 87
*/
/*
#include <stdio.h>
typedef struct
{
int math;
int grade;
}student;
int main()
{
int cnt=0,j,n,i,max=1;
student arr[200];
scanf("%d",&n);
for(i=1;i<=n;i++)
{
scanf("%d",&arr[i].math);
}
for(i=1;i<=n;i++)
{
cnt=0;
// arr[i]의 등수 구하기asdfsdfasdf
// arr[i]보다 높은 점수 개수 구하기
for(j=1;j<=n;j++)
{
if(arr[i].math<arr[j].math)
{
cnt++;
}
}
arr[i].grade = cnt+1;
}
for(i=1;i<=n;i++)
{
printf("%d %d\n",arr[i].math,arr[i].grade);
}
return 0;
}
*/
#include <stdio.h>
typedef struct
{
int country;
int medal;
int score;
}cms;
int main()
{
int cnt,n,i,j;
cms arr[1000];
scanf("%d",&n);
for(i=1;i<=n;i++)
{
scanf("%d %d %d",&arr[i].country,&arr[i].medal,&arr[i].score);
}
for(i=1;i<=n;i++)
{
cnt=0;
for(j=1;j<=n;j++)
{
if(arr[i].score<arr[j].score)
{
cnt++;
}
}
}
for(i=1;i<=3;i++)
{
printf("%d %d\n",arr[i].country,arr[i].medal);
}
}