acgo题库
  • 首页
  • 题库
  • 学习
  • 天梯
  • 备赛

    竞赛

    • CSP-J/S
    • 蓝桥杯

    考级

    • GESP
    • CPA
    • 电子学会考级
  • 资讯
  • 竞赛
  • 讨论
  • 团队
  • 商城
登录
注册
题目详情提交记录(0)
  • ghkgvbhjgbvhkb

    #include<set> #include<cstdio> #include<vector> #include<cstring> const int N=100007,inf=1e9; int n;char str[N];stdvector<int>ans;stdset<int>s1,s2; int getid(){return *s1.begin()<*s2.begin()? 1:2;} void solve() { int cnt=0,now=2,pos=0,next=*s1.begin(); for(int i=1;i<=n;++i) if(now1) { if(nextinf||(getid()==2&&*s1.lower_bound(next)inf&&*s2.begin()!=next)) ++cnt,next=*s2.begin(); pos=next,s2.erase(pos),next=*s1.lower_bound(pos),now=2,ans.push_back(pos); } else { if(nextinf||(getid()==1&&*s2.lower_bound(next)inf&&*s1.begin()!=next)) ++cnt,next=*s1.begin(); pos=next,s1.erase(pos),next=*s2.lower_bound(pos),now=1,ans.push_back(pos); } printf("%d\n",cnt); for(int x:ans) printf("%d ",x); } int main() { scanf("%s",str+1),n=strlen(str+1),s1.insert(inf),s2.insert(inf); for(int i=1;i<=n;++i) (str[i]'L'? s1:s2).insert(i); if(s1.size()<s2.size()||(s1.size()==s2.size()&&*s1.begin()>*s2.begin())) s1.swap(s2); solve(); }

    userId_undefined
    威风的龙
    出道萌新空间掌握者素数猎手ASCII炼金师位操作忍者俄罗斯套娃大师
    0阅读
    0回复
    0点赞
暂无数据

提交答案之后,这里将显示提交结果~

首页