1 条题解
-
1
使用双端队列模拟即可。
马蜂有点shi。#include<bits/stdc++.h> using namespace std; const int maxn=2e5+7; int a[maxn]; int main(){ int n; cin>>n; deque<int>q; for(int i=1;i<=n;i++){ int x; cin>>x; q.push_back(x); } string s; int ans=0,l=1,r=n,last=-1; while(!q.empty() && l<=r){ bool ok1=0,ok2=0; if(q.front() > last)ok1=1; if(q.back() > last)ok2=1; if(!ok1 && !ok2){break;} if(ok1 && ok2){ if(q.front() < q.back()){ s+='L'; ans++; last=q.front(); q.pop_front(); l++; } else { s+='R'; ans++; last=q.back(); q.pop_back(); r--; } continue; } if(ok1){ s+='L'; ans++; last=q.front(); q.pop_front(); l++; continue; } if(ok2){ s+='R'; ans++; last=q.back(); q.pop_back(); r--; continue; } } cout<<ans<<"\n"<<s; }
- 1
信息
- ID
- 7250
- 时间
- 2000ms
- 内存
- 256MiB
- 难度
- 10
- 标签
- 递交数
- 8
- 已通过
- 3
- 上传者