P1143 进制转换 80分求助
查看原帖
P1143 进制转换 80分求助
511268
PIKA_PIKA楼主2021/6/14 10:16

输入

15

5CBD1460

2

输出

111011100110101100100111110110

我的输出

T01100100111110110

#include<bits/stdc++.h>
using namespace std;

string s;
string k;
long long m,n,sum,num;
long long i,j;

int main()
{
    cin>>n;
    cin>>s;
    cin>>m;
    
    int h=s.size();
    for(i=0;i<h;i++){
        if(s[i]<='9' && s[i]>='0') {sum*=n;sum+=s[i]-'0';}
        else{sum*=n;sum+=s[i]-'A'+10;}
    }
    
    if(sum==0) cout<<0;
    while(sum>0){
        if(sum%m>=0 && sum%m<=9)k[j]=sum%m+'0';
        else k[j]=(sum%m)-10+'A';
        sum/=m;
        j++;
    }
    
    j=j-1;
    for(;j>=0;j--) cout<<k[j];
    
	return 0;
}
2021/6/14 10:16
加载中...