#include<bits/stdc++.h>
using namespace std;
int turn1(string n,int base){
int ans=0;
map<char,int> digit_value;
string digit="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
for(int i=0;i<digit.size();i++){
digit_value[digit[i]]=i;
}
for(int i=n.size()-1;i>=0;i--){
ans*=base;
ans+=digit_value[n[i]];
}
return ans;
}
string turn2(int m,int base10){
if(!base10)return "";
string digit="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
return turn2(m,base10/m)+digit[base10%m];
}
int main()
{
string num;
int n,m;
cin>>n>>num>>m;
cout<<turn2(m,turn1(num,n));
return 0;
}
我的记录
咋回事