全RE?
查看原帖
全RE?
1031659
tongyurui楼主2024/7/20 19:51
#include<bits/stdc++.h>
using namespace std;
int k,m,tot;
string s;
priority_queue<int,vector<int>,greater<int> >que;
int main(){
	cin>>k>>m;
	que.push(1);
	while(1){
		int q=que.top();
		que.push(q*2+1);
		que.push(q*4+5);
		char a[100000];
		int j=0;
		while(q){
			j++;
			a[j]=q%10+'0';
			q/=10;
		}
		for(int i=1;i<=j;i++){
			s[++tot]=a[i]+'0';
			if(k==tot)	break;
		}
		if(k==tot)	break;
		que.pop();
	}
	for(int i=1;i<=tot;i++)	cout<<s[i];
	cout<<endl;
	int i=1,nm=m;
	while(m){
		i++;
		if(s[i]>s[i-1]){
			s.erase(i-1,1);
			i--;m--;
			for(int j=i-1;j>=1;j--){
				if(s[i]>s[j]){
					s.erase(j,1);
					i--;m--;
				}
				else	break;
			}
		}
	}
	for(int j=1;j<=tot-nm;j++)	cout<<s[j];
	return 0;
}
2024/7/20 19:51
加载中...