cpp本地能过样例,在洛谷上编译错误
查看原帖
cpp本地能过样例,在洛谷上编译错误
459428
85LP楼主2021/3/6 17:27
#include <iostream>
#include <string.h>
using namespace std;
char a[1000],b[1000],c[1000]={0},d[10000];
bool ishui(char c[],int lenc)
{
	int i,l;
	for(i=0,l=lenc-1;i<lenc;i++,l--)
		d[l]=c[i];
	for(i=0;i<lenc;i++)
	{
		if(d[i]!=c[i]) return false;
	}
	return true;
}

int main()
{
	int n,m;
	cin>>n;//进制数 
	cin>>a;
	int len,i,j,l,p;
	len=strlen(a);
	m=1;
	while(m<=30)
	{
		for(i=0,j=len-1;i<len;i++,j--)
			b[j]=a[i];
			for(i=len-1,l=0;i>=0;i--,l++)
			{
				p=a[i]-'0'+b[i]-'0';
				if(p>=n)
				{
					c[l]=c[l]+p-n+'0';
					c[l+1]+=1;
				}
				else c[l]+=p+'0';
			}
		if(c[l]!=0) 
		{
			len=l+1;
			c[l]+='0';
		}
		if(ishui(c,len)) 
		{
			cout<<"STEP="<<m;
			return 0;
		}
		else
		{
			for(i=0;i<len;i++)
			{
				a[i]=c[i];
				c[i]=0;
			}
			
		}
		m++;
	}
	return 0;
}

请大神指点

2021/3/6 17:27
加载中...