10->k(k<10)
n是待转换数,a是转换完的
long long n,a[114514];
for(int i=0;n!<1;i++){
a[i]=n%10;
n/=10;
}
10->k(k>10)
n是待转换数
这里说一下,十进制以上的数其中一位大于10会用字母表示,A=10,B=11……
所以我们可以:
n+'A'-10
k->10
s是待转换数,k是进制,ans是答案
string s;
long long k,ans;
for(int i=0;i<s.size();i++){
long long now=1;
for(int j=0;j<s.size()-i-1;j++){
now*=k;
}
ans+=(s[i]-'0')*now;
}