P1029713pts,#13,#23WA,代码如下:
#include <bits/stdc++.h>
using namespace std;
int n,a[300005],b[300005],zb[300005][2],ls=0,t=1,ans;
bool non,m[300005];
int main(){
cin>>n;
for (int i=1;i<=n;i++){
cin>>a[i];
m[a[i]]=i;
}
for (int i=1;i<=n;i++){
cin>>b[i];
}
for (int i=1;i<=n;i++){
if (a[i]==b[ls+1]){
ls++;
}
while (b[ls]==b[ls+1]) ls++;
if (a[i]==b[ls]&&i<ls){
zb[i][0]=ls;
ans++;
}
}
if (ls==n) cout<<"YES"<<endl;
else {
cout<<"NO";
return 0;
}
ls=n+1;
for (int i=n;i>0;i--){
if (a[i]==b[ls-1]){
ls--;
}
while (b[ls]==b[ls-1]) ls--;
if (a[i]==b[ls]&&i>ls){
zb[i][1]=ls;
ans++;
}
}
cout<<ans<<endl;
for (int i=1;i<=n;i++){
if (zb[i][1]){
cout<<"L "<<zb[i][1]-1<<" "<<i-1<<endl;
}
}
for (int i=n;i>0;i--){
if (zb[i][0]){
cout<<"R "<<i-1<<" "<<zb[i][0]-1<<endl;
}
}
return 0;
}
谢谢!