#include<stdio.h>
#include<string.h>
int main()
{
int T,i,n,no,cnt,mCnt;
char name[21],mName[21];
scanf("%d",&T);
while(T--){
mCnt=-1;
*mName=0;
scanf("%d",&n);
while(n--){
scanf("%s%d",name,&no);
for(cnt=0,i=2;i<=no;++i)
if(no%i==0){
cnt++;
while(no%i==0)//while()必须放在if()里面,否则只能白白贡献TL了 ,时间抠的太严了
no/=i;
}
if(mCnt<cnt||(mCnt==cnt&&strcmp(mName,name)>0)){
mCnt=cnt;
strcpy(mName,name);
}
}
puts(mName);
}
return 0;
}
#include<string.h>
int main()
{
int T,i,n,no,cnt,mCnt;
char name[21],mName[21];
scanf("%d",&T);
while(T--){
mCnt=-1;
*mName=0;
scanf("%d",&n);
while(n--){
scanf("%s%d",name,&no);
for(cnt=0,i=2;i<=no;++i)
if(no%i==0){
cnt++;
while(no%i==0)//while()必须放在if()里面,否则只能白白贡献TL了 ,时间抠的太严了
no/=i;
}
if(mCnt<cnt||(mCnt==cnt&&strcmp(mName,name)>0)){
mCnt=cnt;
strcpy(mName,name);
}
}
puts(mName);
}
return 0;
}