#include <stdio.h>
#include <string.h>
int toDecimal(char* numStr, int ary)
{
int x = 0, product = 1;
int i;
for (i = strlen(numStr) - 1; i >= 0; i--)
{
int num;
switch(numStr[i])
{
case 'A':
case 'a':
num = 10;
break;
case 'B':
case 'b':
num = 11;
break;
case 'C':
case 'c':
num = 12;
break;
case 'D':
case 'd':
num = 13;
break;
case 'E':
case 'e':
num = 14;
break;
case 'F':
case 'f':
num = 15;
break;
default:
num = numStr[i] - '0';
}
x = x + num * product;
product = product * ary;
}
return x;
}
int main(int argc, char const *argv[])
{
int a, b;
char n[32];
char chs[17][16] =
{
{0},{0},
{'0', '1'},
{'0', '1', '2'},
{'0', '1', '2', '3'},
{'0', '1', '2', '3', '4'},
{'0', '1', '2', '3', '4', '5'},
{'0', '1', '2', '3', '4', '5', '6'},
{'0', '1', '2', '3', '4', '5', '6', '7'},
{'0', '1', '2', '3', '4', '5', '6', '7', '8'},
{'0', '1', '2', '3', '4', '5', '6', '7', '8', '9'},
{'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A'},
{'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B'},
{'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C'},
{'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D'},
{'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E'},
{'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'}
};
while (scanf("%d%s%d", &a, n, &b) != EOF)
{
int num = 0;
char ans[32];
int i;
int x = toDecimal(n, a);
do
{
ans[num++] = chs[b][x % b];
x /= b;
}while(x != 0);
for (i = num - 1; i >= 0; i--)
{
printf("%c", ans[i]);
}
printf("\n");
}
return 0;
}