记录编号 608507 评测结果 AAAAAAAAAAAAAAAAAAAAAAAAA
题目名称 3621.[CSP 2021S]回文 最终得分 100
用户昵称 Gravatar孤独的氢离子 是否通过 通过
代码语言 C++ 运行时间 4.407 s
提交时间 2025-10-26 16:11:35 内存使用 15.22 MiB
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;
int n,a[2000010],b[1000010];
char s[2000010];
int main()
{
	freopen("2021palin.in","r",stdin);
	freopen("2021palin.out","w",stdout);
	int T;
	cin>>T;
	while(T--)
	{
		memset(a,0,sizeof(a));
		memset(b,0,sizeof(b));
		cin>>n;	
		for(int i=1;i<=n*2;i++)
		{
			cin>>a[i];
			if(b[a[i]]==0) b[a[i]]=i;
			else b[a[i]+n]=i;
		}
		if(n==1)
		{
			cout<<"LL"<<endl;
		}
		else
		{
			
		int l1=2,r1=2*n,l2=b[a[1]+n],r2=l2,lst=2,rst=2*n-1;
		for(int il=1;il<=2;il++)
		{
			if(il==1)
			{
				l1=2,r1=2*n,l2=b[a[1]+n],r2=l2,lst=2,rst=2*n-1;
				s[1]='L';
				s[2*n]='L';
			}
			else if(il==2)
			{
				l1=1,r1=2*n-1,l2=b[a[2*n]],r2=l2,lst=2,rst=2*n-1;
				s[1]='R';
				s[2*n]='L';
			}
			for(int i=2;i<=n;i++)
			{
				if(a[l2-1]==a[l1]&&l2-1>l1)
				{
					l2--;l1++;s[lst]='L';s[rst]='L';
					lst++;rst--;
				}
				else if(a[r2+1]==a[l1])
				{
					r2++;l1++;s[lst]='L';s[rst]='R';
					lst++;rst--;
				}
				else if(a[l2-1]==a[r1])
				{
					l2--;r1--;s[lst]='R';s[rst]='L';
					lst++;rst--;
				}
				else if(a[r2+1]==a[r1]&&r2+1<r1)
				{
					r2++;r1--;s[lst]='R';s[rst]='R';
					lst++;rst--;
				}
				else 
				{
					if(il==2)
					{
						cout<<-1<<endl;
					}
					break;
				}
				if(i==n)
				{
					for(int k=1;k<=2*n;k++)
					{
						cout<<s[k];
					}
					cout<<endl;
					il=3;
				}
			}
		}
		}
	}
	return 0;
}