代码如下
#include <bits/stdc++.h>
using namespace std;
int n,r;
string tran="0123456789ABCDEFGHIJKLMN";
string ans="";
string fun(int n,int r){
int num=n;
ans="";
while(num){
int a,b;
a=num/r;
b=num-r*a;
while(b<0){
b+=-r;
a++;
}
while(b>=-r){
b-=-r;
a--;
}
ans+=tran[b];
num=a;
}
}
int main(){
cin>>n>>r;
fun(n,r);
cout<<n<<"=";
for(int i=ans.length()-1;i>=0;i--){
putchar(ans[i]);
}
cout<<"(base"<<r<<")";
return 0;
}
编译器用的devc++,本地跑没啥问题,但是上传就RE,网上查了说是内存溢出的问题,但是蒟蒻完全看不明白哪里内存溢出,把sring ans改成char ans[100]还是一样本地能跑,上传RE,真看不出来了,球球各位QWQ