不会优先队列的蒟蒻全WA求助
查看原帖
不会优先队列的蒟蒻全WA求助
1126325
Indestructible楼主2024/4/7 22:20
#include<bits/stdc++.h>
using namespace std;
const int maxn=30010;
int k,m,id=2;
int p[maxn*2];
struct node{
	int num;
	int id;
}a[maxn*8];
int main(){
	p[1]=a[1].num=a[1].id=1;
	a[0].num=10;
	scanf("%d%d",&k,&m);
	printf("1");
	for (int i=1;i<=k;i++){
		p[i<<1]=p[i]<<1|1;
		p[i<<1|1]=(p[i]<<2)+5;
	}
	sort(p+1,p+k*2+2);
	for (int i=2,j=1;i<=k;i++,j=1){
		printf("%d",p[i]);
		while (j<p[i]) j*=10;
		while (p[i]) a[id].id=id,j/=10,a[id++].num=p[i]/j,p[i]%=j;
	}
	printf("\n");
	for (int i=1;i<=m;i++){
		int oldid=0;
		for (int j=1;j<id;j++){
			if (a[j].num==10) continue;
			if (a[oldid].num<a[j].num){
				a[oldid].num=10;
				break;
			}
			oldid=j;
		}
		a[oldid].num=10;
	}
	for (int i=1;i<id;i++){
		if (a[i].num<10) printf("%d",a[i].num);
	}
	return 0;
}

手测一些数据,过了,样例也过了

2024/4/7 22:20
加载中...