社区讨论

求助,P8508 做不完的作业,40分

学术版参与者 3已保存回复 3

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
3 条
当前快照
1 份
快照标识符
@lrbmu2ss
此快照首次捕获于
2024/01/13 13:34
2 年前
此快照最后确认于
2024/01/13 16:04
2 年前
查看原帖
WA(40分)
C
#include<bits/stdc++.h>
using namespace std;
long long n,x,p,q,i=1,sum,t,w;
int main(){
	cin>>n>>x>>p>>q;
	while(n--){
		cin>>w;
		if((x-t-w+sum)*q>=i*p*x&&x-t>w){
			t+=w; 
		}
		else{
			sum+=x-t;
			i++;
			long long l=ceil((q*(sum+x-w)-p*i*x)*1.0/(x*p-x*q));
			if(l>0){
				sum+=x*1;
				i+=1;
			}
			t=w;
		}
	}
	cout<<i;
	return 0;
}
测试点

回复

3 条回复,欢迎继续交流。

正在加载回复...