#include <stdio.h>
int main()
{
int T,R,i,flag,flag2;
long long a;
int sum[64];
scanf("%d",&T);
while(T--)
{
flag=0;
flag2=0;
scanf("%d %d",&a,&R);
if(a<0)
{
a=-a;
flag=1;
}
if(a<R)
{
printf("%d",a);
flag2=1;
}
for(i=0;a>1&&flag2==0;i++)
{
sum[i]=a%R;
a=a/R;
if(a<R&&a>0)
{
sum[i+1]=a;
i++;
break;
}
}
for(;i>=0&&flag2==0;i--)
{
if(flag==1)
{
printf("-");
flag=0;
}
switch(sum[i])
{
case 10 : printf("A");break;
case 11 :printf("B");break;
case 12 :printf("C");break;
case 13 :printf("D");break;
case 14 :printf("E");break;
case 15 :printf("F");break;
case 16 :printf("G");break;
case 17 :printf("H");break;
case 18 :printf("I");break;
case 19 :printf("J");break;
case 20 :printf("K");break;
case 21 :printf("L");break;
case 22 :printf("M");break;
case 23 :printf("N");break;
case 24 :printf("O");break;
case 25 :printf("P");break;
case 26 :printf("Q");break;
case 27 :printf("R");break;
case 28 :printf("S");break;
case 29 :printf("T");break;
case 30 :printf("U");break;
case 31 :printf("V");break;
case 32 :printf("W");break;
case 33 :printf("X");break;
case 34 :printf("Y");break;
case 35 :printf("Z");break;
default :printf("%d",sum[i]);
}
}
printf("\n");
}
return 0;
}
EOJ上wa.........