求助dalao:-#4TLE......-
  • 板块P1143 进制转换
  • 楼主SZnP
  • 当前回复1
  • 已保存回复1
  • 发布时间2022/1/19 21:45
  • 上次更新2023/10/28 11:53:59
查看原帖
求助dalao:-#4TLE......-
516867
SZnP楼主2022/1/19 21:45
#include <bits/stdc++.h>
using namespace std;
long long s,n;
int o;
string l;
char w[16]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
void f(int x,int m)
{
	int i,v,l,z=0,c=0;
	for(i=0;;i++)
	{
		l=pow(m,i);
		if(l>x)break;
	}
	i--;
	for(int j=i;j>=0;j--)
	{
		for(;;)
		{
			x-=pow(m,i);
			if(x>=0){z++;}
			else {cout<<w[z];x+=pow(m,i);break;}
		}
		i--;
		z=0;
	}
}
void fun()
{
	cin>>l;
	int llen=l.length(),k;llen--;
	for(int i=0;i<l.length();i++)
	{
		if((l[i]>='0')&&(l[i]<='9'))k=l[i]-'0';
		else k=l[i]-'A'+10;
		s+=pow(n,llen)*k;
		llen--;
	}
}
int main()
{
	cin>>n;
	fun();
	cin>>o;
	f(s,o);
	return 0;
}
2022/1/19 21:45
加载中...