#include <stdio.h>
long long CF (int m, int n);
void reverse (char* b);
int main () {
int x, y, i, j, mid;
char a[33], b[33];
scanf("%d %d", &x, &y);
scanf("%s", a);
i = 0;
mid = 0;
while (a[i] != '\0') i++;
for (j = 0; j < i; j++) {
if (a[j] > '9') {
mid += (a[j]-55) * CF(x, (i-j-1));
} else {
mid += (a[j]-48) * CF(x, (i-j-1));
}
}
printf("mid = %d\n", mid);
j = 0;
while (mid > 0) {
if (mid % y > 9) {
b[j] = (mid % y) + 55;
} else {
b[j] = (mid % y) + 48;
}
j++;
mid /= y;
}
reverse(b);
printf("%s", b);
return 0;
}
long long CF (int m, int n) {
int result = 1;
int i;
for (i = 0; i < n; i++) result *= m;
return result;
}
void reverse (char* b) {
int len = 0, i = 0;
char c;
while (b[len] != '\0') len++;
for (i; i < len/2; i++) {
c = b[i];
b[i] = b[len-i-1];
b[len-i-1] = c;
}
}