为什么老是输出0啊????
查看原帖
为什么老是输出0啊????
865793
better_Z楼主2023/6/23 15:27
#include<iostream>
#include<cmath>
#include<cstdio>
#define ll long long
using namespace std;
int main(){
    ll n,m,s1,s2,p1,a[100005];
    ll t,d;
    int point;
    cin>>n;
    for(int i=1;i<=n;i++)cin>>a[i];
    for(int i=1;i<m;i++)d+=a[i]*(m-i);
    for(int i=m+1;i<n;i++)t+=a[i]*(i-m);
    cin>>m>>p1>>s1>>s2;
    if(p1<m)d+=s1*(m-p1);
    else if(p1>m)t+=s1*(p1-m);
    if(t==d){
        printf("%lld",m);
        return 0;
    }
    int cha=abs(t-d);//差值
    if(t>d){
        for(int i=1;i<m;i++){
            if(i*s2<=cha){
                point=m-i;
            }
        }
        printf("%d",point);
        return 0;
    }
    if(t<d){
        for(int i=m+1;i<n;i++){
            if((i-m)*s2<=cha){
                point=m-i;
            }
        }
        printf("%d",point);
        return 0;
    }
    printf("%lld",m);
    return 0;
}
2023/6/23 15:27
加载中...