代码很简洁 求调
查看原帖
代码很简洁 求调
232205
little_kongbai楼主2022/3/9 14:13

样例过但全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;
	}
2022/3/9 14:13
加载中...