已ac

Y  •  3天前


include

include

include

using namespace std; typedef long long ll; const int N = 100010; int a[N]; int n,m,p1,s1,s2;

int main(){

scanf("%d",&n);
for(int i = 1;i<=n;i++) scanf("%d",&a[i]);
scanf("%d%d%d%d",&m,&p1,&s1,&s2);

ll dragon = 0,tiger = 0;
for(int i=1;i<m;i++) dragon += 1ll * a[i] * (m-i);
for(int i=m+1;i<=n;i++) tiger += 1ll * a[i] * (i-m);

if(p1 < m) dragon += 1ll * s1 * (m - p1);
if(p1 > m) tiger += 1ll * s1 * (p1 - m);

ll md = LLONG_MAX;
int pos = 0;
for(int i=1;i<=n;i++){
	ll diff, add;
	if(i<m){
		add = 1ll * s2 * (m-i);
		diff = abs((dragon+add) - tiger);
	}
	if(i>m){
		add = 1ll * s2 * (i-m);
		diff = abs((tiger+add) - dragon);
	}
	if(i==m) diff = abs(dragon -tiger);
	if(diff < md){
		pos = i;
		md = diff;
	}
}
cout << pos ;
return 0;

}


评论:

请先登录,才能进行评论