Increasing Subsequence (easy version)
#include <iostream>
#include <iomanip>
#include <algorithm>
#include <stdlib.h>
#include <cstdio>
#include <cstring>
#include <cmath>
#include <bitset>
#include <stack>
#include <queue>
#include <set>
#include <vector>
#include <map>
using namespace std;
const int INF = 0x3f3f3f3f;
typedef long long ll;
const int maxn = 200005;
int n,a[maxn],per;
string str;
bool flag;
int main(){
while(~scanf("%d",&n)){
for(int i=0;i<n;i++){
scanf("%d",&a[i]);
}
int i,j;
flag=0;
int cnt=0,per=0;
for(i=0,j=n-1;i<j;){
if(a[i]>a[j]){
if(a[j]>per)per=a[j],++cnt,str+="R",--j;
else if(a[i]>per)per=a[i],++cnt,str+="L",++i;
else break;
}
else{
if(a[i]>per)per=a[i],++cnt,str+="L",++i;
else if(a[j]>per)per=a[j],str+="R",++cnt,--j;
else break;
}
}
if(i==j&&a[j]>per){
if(2*j>=n-1)str+="R",++cnt;
else str+="L",++cnt;
}
cout<<cnt<<endl;
cout<<str<<endl;
}
return 0;
}