//m进制转n进制,用10进制作为中间人
//    for(int i=str.size()-1;i>=0;i--)//写成i++了就段错误了

#include <iostream>
#include <vector>
using namespace std;

int CharToInt(char c)
{
    if(c>='0'&&c<='9')
    return c-'0';
    else
     return c-'A'+10;
}
char IntToChar(int x)
{
    if(x>=0&&x<=9)
    return x+'0';
    else
     return x-10+'a';
}
int main()
{
    int m, n;
    while (cin >> m >> n) 
    { 
        string str;
        cin>>str;//能多个用例输入。用getline(cin,str)就会接收2后面的换行符
        
        long long ten=0;//
        for(int i=0;i<str.size();i++)//m进制转10进制
        {
            ten=ten*m;
            ten+=CharToInt(str[i]);
        }

        vector<char> answer;
        while(ten)//10进制转n进制
        {
            char x=IntToChar(ten%n);
            answer.push_back(x); 
            ten/=n;
        }
        for(int i=answer.size()-1;i>=0;i--)
        {
            cout<<answer[i];
        }
        cout<<endl;

    }    
  
    return 0;
}