记录详情

Accepted


  
# 状态 耗时 内存占用
#1 Accepted 1ms 204.0 KiB
#2 Accepted 1ms 212.0 KiB
#3 Accepted 22ms 1.062 MiB
#4 Accepted 1ms 200.0 KiB
#5 Accepted 1ms 204.0 KiB
#6 Accepted 1ms 200.0 KiB
#7 Accepted 1ms 200.0 KiB
#8 Accepted 20ms 880.0 KiB
#9 Accepted 31ms 1.469 MiB
#10 Accepted 84ms 9.129 MiB
#11 Accepted 93ms 11.16 MiB
#12 Accepted 124ms 15.066 MiB
#13 Accepted 167ms 21.098 MiB
#14 Accepted 243ms 29.098 MiB
#15 Accepted 22ms 900.0 KiB
#16 Accepted 27ms 1.293 MiB
#17 Accepted 27ms 1.438 MiB
#18 Accepted 39ms 2.305 MiB
#19 Accepted 124ms 15.137 MiB
#20 Accepted 218ms 29.0 MiB

代码

#include<bits/stdc++.h>
using namespace std;
queue<int> q[3];
int n,m,t,q1,add;
double p;
int a[100010];
inline int read(){
	int x=0,f=1;char c=getchar();
	while(c<'0') f^=(c=='-'),c=getchar();
	while(c>'/') x=(x<<3)+(x<<1)+(c^'0'),c=getchar();
	return f?x:-x;
}
inline int getmax(){
	int res=-2e9,rep=0;
	for(int i=0;i<3;i++){
		if(!q[i].empty()&&q[i].front()>res)
		  res=q[i].front(),rep=i;
	}
	q[rep].pop();
	return res;
}
int main(){
	n=read();m=read();q1=read();p=1.0*read()/read();t=read(); 
	for(int i=1;i<=n;i++)a[i]=read();
	sort(a+1,a+n+1);
	for(int i=n;i;i--)q[0].push(a[i]);
	for(int i=1;i<=m;i++){
		int x=getmax()+add;
		if(i%t==0)printf("%d ",x);	
		int l=p*x,r=x-l;
		add+=q1;
		q[1].push(l-add);
		q[2].push(r-add);
	}
	puts("");
	for(int i=1;i<=n+m;i++){
	  int x=getmax()+add;
	  if(i%t==0)printf("%d ",x);	
	}
	puts("");
	return 0;
}

信息

递交者
类型
递交
题目
P1007 蚯蚓
比赛
随机真题赛第三轮(xhy&lfy讲题)
题目数据
下载
语言
C++
递交时间
2019-11-12 15:29:06
评测时间
2019-11-12 15:29:06
评测机
分数
100
总耗时
1255ms
峰值内存
29.098 MiB