求助,我这个程序为什么在评测机上面CE
  • 板块学术版
  • 楼主XTZ11
  • 当前回复2
  • 已保存回复2
  • 发布时间2024/11/19 20:09
  • 上次更新2024/11/19 21:38:14
查看原帖
求助,我这个程序为什么在评测机上面CE
421981
XTZ11楼主2024/11/19 20:09

求助

这个程序在我的dev-c++上面能正常运行,但是在学校的oj上就是CE,是不是用了什么不规范的语法

代码如下:

#include<iostream>
#include<string.h>
using namespace std;

long long n,k,a[1000][2],b[1000][2],cnt[2],ch,ans,front,end;

void trans(long long m,long long kk)
{
	ch=0; 
	if(kk!=10)
	{
		ch++;
	}
	else
	{
		memset(cnt,0,sizeof(cnt));	
		memset(a,0,sizeof(a));
		memset(b,0,sizeof(b)); 
	} 
	while(m)
	{
		a[cnt[ch]++][ch]=m%kk;
		m/=kk;
	}
	for(long long i=0;i<cnt[ch];i++)
	{
		b[i][ch]=a[cnt[ch]-1-i][ch];
	}
}

int cheak(int s)
{
	trans(s,10);
	trans(s,k);
	
	for(ch=0;ch<=1;ch++)
	{
		front=0; cnt[ch]--;
		end=cnt[ch];
		while(front<end)
		{
			if(b[front][ch]!=b[end][ch])
			{
				return 0;
			}
			front++; end--;
		} 
	}
	return 1; 
}

int main()
{
	cin>>n>>k;
	for(long long i=1;i<=n;i++)
	{
		if(cheak(i)==1)
		{
			ans+=i;
		//	cout<<i<<endl; 
		}
	}
	cout<<ans;
    return 0;
}

2024/11/19 20:09
加载中...