72求调
查看原帖
72求调
1128912
zzxtkl楼主2024/10/4 10:28

72求调

#include<bits/stdc++.h>
using namespace std;
long long f[114514];
int main()
{
	long long ans1=0,ans2=0;
	long long s,p,q;
	long long n,m;
	cin>>n;
	for(long long i=1;i<=n;i++)
		cin>>f[i];
	cin>>m>>s>>p>>q;
	f[s]+=p;
	for(long long i=1;i<=m-1;i++)
		ans1+=f[i]*(m-i);
	for(long long i=m+1;i<=n;i++)
		ans2+=f[i]*(i-m);
	if(ans1==ans2)
	{
		cout<<m<<endl;
		return 0;
	}
	else if(ans1<ans2)
	{
		long long  w=(ans2-ans1+q-1)/q;
		if(m-w==0)
			w--;
		if(w*q+ans1-ans2>ans2-ans1)
			cout<<m;
		else
			cout<<m-w;
	}
	else if(ans2<ans1)
	{
		long long w=(ans1-ans2+q-1)/q;
		if(m-w==0)
			w--;
		if(w*q+ans2-ans1>ans1-ans2)
			cout<<m;
		else
			cout<<m+w;
	}
	return 0;
}
2024/10/4 10:28
加载中...