P5016 [NOIP2018 普及组] 龙虎斗

#include<cstdio>
#include<iostream>
#include<algorithm>
//#include<queue>
//#include<vector>
//#include<bits/stdc++.h>
#define ll long long
#define ddd printf("-----------------------\n");
using namespace std;
const int maxn=1e5+10 ;

int n,m,p1;
ll s1,s2,a[maxn],sum1,sum2,t1,t2,where,ans=0x3f3f3f3f3f3f3f;

int main()
{
    ios::sync_with_stdio(false);
    cin>>n;
    for(int i=1;i<=n;i++) cin>>a[i];
    cin>>m>>p1>>s1>>s2;
    a[p1]+=s1;
    for(int i=1;i<=n;i++)
    {
        if(i<m) sum1+=(m-i)*a[i];
        else if(i>m) sum2+=(i-m)*a[i];
    }
    for(int i=1;i<=n;i++)
    {
        t1=sum1,t2=sum2;
        if(i<m) t1+=(m-i)*s2;
        else if(i>m) t2+=(i-m)*s2;
        if(ans>abs(t1-t2))
        {
            ans=abs(t1-t2);
            where=i;
        }
    }
    cout<<where;
    return 0;
}

 

posted @ 2023-09-05 06:19  JMXZ  阅读(18)  评论(0)    收藏  举报