#include<stdio.h>
struct niu
{
char s[105];
int p,v;
double w;
}a[103];
int main()
{
int n,i,j;
while(scanf("%d",&n)!=EOF)
{
int k;
double min;
for(i=0;i<n;i++)
{
scanf("%s%d%d",a[i].s,&a[i].p,&a[i].v);
if(a[i].v>1000)
a[i].w=a[i].p/5.0;
else
a[i].w=a[i].p*1.0/(a[i].v/200);
if(i==0)
{
k=i;
min=a[i].w;
}
else
{
if(min==a[i].w&&a[i].v>a[k].v&&a[i].v) k=i;
else if(min>a[i].w&&a[i].v)
{
k=i;
min=a[i].w;
}
}
}
printf("%s\n",a[k].s);
}
return 0;
}
struct niu
{
char s[105];
int p,v;
double w;
}a[103];
int main()
{
int n,i,j;
while(scanf("%d",&n)!=EOF)
{
int k;
double min;
for(i=0;i<n;i++)
{
scanf("%s%d%d",a[i].s,&a[i].p,&a[i].v);
if(a[i].v>1000)
a[i].w=a[i].p/5.0;
else
a[i].w=a[i].p*1.0/(a[i].v/200);
if(i==0)
{
k=i;
min=a[i].w;
}
else
{
if(min==a[i].w&&a[i].v>a[k].v&&a[i].v) k=i;
else if(min>a[i].w&&a[i].v)
{
k=i;
min=a[i].w;
}
}
}
printf("%s\n",a[k].s);
}
return 0;
}