按题解第一篇思路写的,错误在哪呢?
查看原帖
按题解第一篇思路写的,错误在哪呢?
1065103
Atri_Lobato楼主2024/6/27 17:41
#include<iostream>
#include<cstdio>
using namespace std;
int n;
char s[10000005];
int main()
{
	scanf("%d",&n);
	if(n%2==0)
	{
		cout<<"NOT POSSIBLE";
		return 0;
	}
	scanf("%s",s+1);
	bool flag1=0,flag2=0;
	int i=1;
	for(int j=n/2+1;i<=n/2&&j<=n;i++)
	{
		for(;s[i]!=s[j]&&j<=n;j++);	
		if(i==n/2&&j<=n)
		flag1=1;
		j++;
	}
	
	i=n/2+2;
	for(int j=1;j<=n/2+1&&i<=n;i++)
	{
		for(;s[i]!=s[j]&&j<=n/2+1;j++); 
		if(i==n&&j<=n/2+1)
		flag2=1;
		j++;
	}
	
	if(flag1==0&&flag2==0)
	{
		cout<<"NOT POSSIBLE";
	}
	else if(flag1==1&&flag2==1)
	{
		cout<<"NOT UNIQUE";
	}
	else if(flag1==1)
	{
		for(int q=1;q<=n/2;q++)
		{
			cout<<s[q];
		}
	}
	else if(flag2==1)
	{
		for(int q=n/2+2;q<=n;q++)
		{
			cout<<s[q];
		}
	}
	return 0;
}
2024/6/27 17:41
加载中...