求调
查看原帖
求调
776337
sugawara楼主2024/7/4 14:37
#include<math.h>
#include<iostream>
#include<algorithm>
#define int long long
using namespace std;
const int N=1e5+10;
int c[N],n,m,p1,s1,s2;
int ls,hs,num,mx;
signed main(){
	scanf("%lld",&n);
	for(int i=1;i<=n;i++) scanf("%lld",&c[i]);
	scanf("%lld%lld%lld%lld",&m,&p1,&s1,&s2);
	for(int i=1;i<=m;i++) ls+=(m-i)*c[i],hs=i*c[m-i];
	if(p1!=m){
		if(p1>m) hs+=(p1-m)*s1;
		if(p1<m) ls+=(m-p1)*s1;
	}num=hs-ls;
	if(num==0){printf("%lld",m);return 0;}
	else if(num>0)
		for(int i=1;i<=m;i++){if(abs(num-mx*s2)>abs(num-i*s2)) mx=i;}
	else
		for(int i=n;i>=m;i--){if(abs(num-mx*s2)>abs(num-i*s2)) mx=i;}
	printf("%lld",mx);
	return 0;
}
2024/7/4 14:37
加载中...