求助!!!
查看原帖
求助!!!
558213
在下白吃楼主2022/1/28 17:52

代码如下:

#include<iostream>
#include<string>
#include<cstdio>
using namespace std;
int main(){
   string a,b;
   long long n,m,sum=0,ans[100]={};
   cin>>n;
   if(n!=10){
     cin>>a>>m;
     	  if(n==m){
     		  cout<<a;
     		  return 0;
     	  }
     	  int l=a.size();
     	  for(int i=l-1;i>=0;i--){
     		  int t=1;
     		  if(a[i]>='0'&&a[i]<='9'){
     			  t=a[i]-'0';
     		  }else if(a[i]>='A'&&a[i]<='F'){
     		    t=a[i]-'A'+10;
     		  }
     		  if(i!=0){
     		    for(int j=1;j<=i;j++){
     				  t=t*n;
     			  }
     		  } 
     	  sum+=t;
     	 }	
   }else{
   	cin>>sum>>m;
   }
   
   if(m==10){
   	cout<<sum;
   	return 0;
   }
   int c=1;
   while(sum!=0){
   	if(sum%m==1){
   		ans[c]=1;
   	}else{
   		ans[c]=sum%m;
   	}
   	sum/=m;
   	c++;
   }
   for(int i=c-1;i>=1;i--){
     if(ans[i]>10){
       printf("%c",'A'+ans[i]-10);
     }else{
       cout<<ans[i];
     }
   
   }
   return 0;
}
2022/1/28 17:52
加载中...