80求助
查看原帖
80求助
662382
Luogu_yuyi楼主2022/1/10 21:08
#include <iostream>
#include <cmath>
using namespace std;

int main()
{
    int n,p1,p2;
    long long s1,s2,dragon=0,tiger=0,ans,m;
    int a[100];
    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)
            continue;
        if(i<m)
        {
            dragon+=a[i]*(m-i);
            continue;
        }
        if(i>m)
        {
            tiger+=a[i]*(i-m);
        }
    }

    ans=abs(dragon-tiger);
    p2=m;
    for(int i=1;i<=n;i++)
    { if(i<m)
       {
          long long sum=s2*(m-i);
          if(abs(dragon-tiger+sum)<ans)
          {
             ans=abs(dragon-tiger+sum);
                p2=i;
            }
        }
        if(i>m)
        {
          long long sum=s2*(i-m);
          if(abs(dragon-tiger-sum)<ans)
          {
            ans=abs(dragon-tiger-sum);
            p2=i;
            }
        }
    }
    cout << p2<< endl;
    return 0;
}
2022/1/10 21:08
加载中...