- 问答
龙虎斗,但是和答案完全不沾边
- 2023-11-25 15:36:04 @
#include<bits/stdc++.h>
using namespace std;
long long o,p,q,r,s,t,lqq,hqq,lqqg,hqqg,minq=0x3f3f3f3f;
int z[100010];
void lq(int m)
{
for(int i=1;i<o;i++) lqq+=z[i]*(o-i);
}
void hq(int m)
{
for(int i=s;i>o;i--) hqq+=z[i]*(i-o);
}
void tbh(int x,int y)
{
if(x>o) hqq+=y*(x-o);
if(x<o) lqq+=y*(o-x);
}
int foo(int x)
{
if(lqq>hqq)
{
for(int i=o+1;i<=s;i++)
{
lqqg=lqq,hqqg=hqq;
hqqg+=(i-o)*x;
if(fabs(hqqg-lqqg)<=minq)
{
minq=fabs(hqqg-hqqg);
t=i;
}
}
}
if(hqq>lqq)
{
for(int i=o-1;i>=1;i--)
{
lqqg=lqq,hqqg=hqq;
lqqg+=(o-i)*x;
if(fabs(hqqg-lqqg)<=minq)
{
minq=fabs(hqqg-hqqg);
t=i;
}
}
}
return t;
}
int main()
{
cin >> s ;
for(int i=1;i<=s;i++)
{
cin >> z[i] ;
}
cin >> o >> p >> q >> r ;
hq(o),lq(o);
tbh(q,p);
cout << foo(r);
}
0 comments
No comments so far...