求助大佬!!!
查看原帖
求助大佬!!!
211948
Hopearceus楼主2020/9/17 18:17

输出和标准答案一样,但是洛谷显示too short全部WA

#include<iostream>
#include<cstdio>
#include<cstring>
#include<map>
using namespace std;
int n,m,a;
char ch[110],s[]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
map<char,int> p;
int qsm(int a,int b){
	int ans=1;
	while(b){
		if(b&1){
			ans*=a;
		}
		b>>=1;
		a*=a;
	}
	return ans;
}
void work(int a){
	if(a==0) {
		return;
	}
	work(a/m);
	printf("%c",s[a%m]);
}
int main()
{
	scanf("%d",&n);
	getchar();
	gets(ch);
	for(int i=0;i<=9;i++)
	  p[(char)(i+48)]=i;
	p['A']=10;p['B']=11;p['C']=12;p['D']=13;p['E']=14;p['F']=15;
	int len=strlen(ch);
	for(int i=0;i<len;i++){
		a+=p[ch[i]]*qsm(n,len-1-i);
	}
	scanf("%d",&m);
	work(a);
	return 0;
}

2020/9/17 18:17
加载中...