20分。。。。。。。。
  • 板块P1143 进制转换
  • 楼主shimao
  • 当前回复1
  • 已保存回复1
  • 发布时间2020/8/4 11:57
  • 上次更新2023/11/6 21:20:49
查看原帖
20分。。。。。。。。
312121
shimao楼主2020/8/4 11:57
#include<bits/stdc++.h>
using namespace std;
int turn1(string n,int base){
	int ans=0;
	map<char,int> digit_value;
	string digit="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
	for(int i=0;i<digit.size();i++){
		digit_value[digit[i]]=i;
	}
	for(int i=n.size()-1;i>=0;i--){
		ans*=base;
		ans+=digit_value[n[i]];
	}
	return ans;
}
string turn2(int m,int base10){
	if(!base10)return "";
	string digit="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
	return turn2(m,base10/m)+digit[base10%m];
}
int main()
{
	string num;
	int n,m;
	cin>>n>>num>>m;
	cout<<turn2(m,turn1(num,n));
	return 0;
}

我的记录

咋回事

2020/8/4 11:57
加载中...