样例过但全WA
这道题好久之前就开做了 今天做了还是过不了...
#include<bits/stdc++.h>
using namespace std;
const int maxn=3e4+5;
priority_queue<int,vector<int>,greater<int> >q;
int k,m,ls,cnt,s[maxn],len;string ans;
int main(){
scanf("%d%d",&k,&m);
q.push(1);
for(int i=1;i<=k;i++){
ls=q.top();q.pop();
q.push(2*ls+1);q.push(4*ls+5);
ans=ans+to_string(ls);
}
cout<<ans<<endl;len=ans.length();
for(int i=1;i<len;i++){
if(m&&ans[i-1]<ans[i])--m;
else s[++cnt]=ans[i-1]-'0';
}
s[++cnt]=ans[len-1]-'0';
for(int i=1;i<=cnt-m;i++)printf("%d",s[i]);
return 0;
}