贪心贪爆了 44分求解
查看原帖
贪心贪爆了 44分求解
127169
Baiwhiter楼主2020/10/13 16:57
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<queue>
using namespace std;
priority_queue<int,vector<int>,less<int> > q;//大根堆 
char s[251];
int ans[251];
int k;
int main(){
	cin>>s;
	int lens=strlen(s);
    for(int i=0;i<lens;i++){
    	int x=(int)(s[i]-48);
    	//cout<<x<<endl;
    	q.push(x);
	}//换成数 
	cin>>k;
	for(int i=1;i<=k;i++){
		q.pop();
	}//将大的全部去掉 
	int n=q.size(),sans=q.size();
	while(!q.empty()){
		ans[n]=q.top();
		n--;
		q.pop();
	}//倒序进入数组 
	for(int i=1;i<=sans;i++){
		//if(!ans[i]) continue;//去除前导0
		cout<<ans[i];
	}
	return 0;
}
2020/10/13 16:57
加载中...