90分求助
查看原帖
90分求助
875806
liupan2010楼主2023/3/4 09:07
#include<bits/stdc++.h>
using namespace std;
int fastpow(int a,int b)
{
	int ans=1;
	while(b)
	{
		if(b&1)
			ans*=a;
		b>>=1;
		a*=a;
	}
	return ans;
}
int n_to_ten(int base,string x)
{
	int i,len=x.size(),ans=0,s=len-1;
	for(i=0;i<len;i++)
	{
		if(x[i]>='0'&&x[i]<='9')
			x[i]-=48;
		else if(x[i]>='A'&&x[i]<='F')
			x[i]-=55;
		ans+=x[i]*fastpow(base,s);
		s--;
	}
	return ans;
}
int main()
{
	ios::sync_with_stdio(false);
	cin.tie(0);
	cout.tie(0);
	string x;
	int base;
	cin>>base>>x;
	cout<<n_to_ten(base,x);
	return 0;
}
2023/3/4 09:07
加载中...