Jerrlee✅
2022-03-28 08:01:34
给一个
把每个十进制数用整形数读入,进行数位分离,对于每一种情况打表,一一对应转化成字符串,存入到 sum
这个字符串中即可。
注意特判数字为
推荐练习题:P1143,可以参考我的 另一篇题解 AC 那题。
#include<bits/stdc++.h>
using namespace std;
string ten_to_anything(int n,int s){
if(s==0) return "0";
int r,q=s;
string sum;
while(q!=0){
r=q%n;
q=q/n;
char a;
switch(r){
case 0:a='0';break;
case 1:a='1';break;
case 2:a='2';break;
case 3:a='3';break;
case 4:a='4';break;
case 5:a='5';break;
case 6:a='6';break;
case 7:a='7';break;
case 8:a='8';break;
case 9:a='9';break;
case 10:a='A';break;
case 11:a='B';break;
case 12:a='C';break;
case 13:a='D';break;
case 14:a='E';break;
case 15:a='F';break;
case 16:a='G';break;
case 17:a='H';break;
case 18:a='I';break;
case 19:a='J';break;
case 20:a='K';break;
case 21:a='L';break;
case 22:a='M';break;
case 23:a='N';break;
case 24:a='O';break;
case 25:a='P';break;
case 26:a='Q';break;
case 27:a='R';break;
case 28:a='S';break;
case 29:a='T';break;
case 30:a='U';break;
case 31:a='V';break;
case 32:a='W';break;
case 33:a='X';break;
case 34:a='Y';break;
case 35:a='Z';break;
}
sum.insert(0,1,a);
}
return sum;
}
int main(){
int m;
int s;
cin>>s>>m;
cout<<ten_to_anything(m,s);
}
AC 记录