堆排序50求调
查看原帖
堆排序50求调
465055
1004779564bzbjj楼主2024/6/27 15:50
#include<bits/stdc++.h>
using namespace std;
int n,m,q,u,v,t,cnt;//cnt在这里是偏移量
double f;
priority_queue<int> qy;//蚯蚓
int main(){
	cin>>n>>m>>q>>u>>v>>t;
	f=double(u)/double(v);
	for(int i=1;i<=n;i++){
		int x;cin>>x;
		qy.push(x);
	}
	for(int i=1;i<=m;i++){
		int c=qy.top()+cnt;
		qy.pop();
		if(i%t==0)cout<<c<<" ";
		cnt+=q;
		int a=f*c;
		int b=c-a;
		//cout<<a<<" "<<b<<endl;
		qy.push(a-cnt);
		qy.push(b-cnt);
		
	}cout<<endl;
	for(int i=qy.size();i>=1;i--){
		if(i%t==0){
			cout<<qy.top()+cnt<<" ";
		}
		qy.pop();
	}
	return 0;
}

TLE是正常的,可是为什么WA了呢

2024/6/27 15:50
加载中...