#include<iostream>
#include<string>
#include<cmath>
using namespace std;
int arr[10000];
string tentom(int n,int m){
if(n==0) return "0";
string str;
int i=0;
while(n!=0){
arr[i++]=n%m;
n /= m;
}
for(int k=i-1; k >= 0; k--){
if(arr[k]>=10) str+=char(arr[k]+55);
else str+=char(arr[k]+48);
}
return str;
}
int mtoten(string str,int m){
int len=str.length();
int sum=0;
for(int i=0; i < len; i++){
if(str[i]<='9'&&str[i]>='0')sum+=(str[i]-'0')*pow(m,len-1-i);
else sum+=(str[i]-55)*pow(m,len-1-i);
}
return sum;
}
int main()
{
int test;
cin >> test;
while(test--){
int m;
string str1,str2;
cin >> m >> str1 >> str2;
int a=mtoten(str1,m);
int b=mtoten(str2,m);
cout << tentom(a/b,m) << endl;
cout << tentom(a%b,m) << endl;
}
return 0;
}
Sicily 1813. M进制数问题
最新推荐文章于 2017-02-20 19:57:30 发布