80pts求助
  • 板块P1109 学生分组
  • 楼主ZYU_
  • 当前回复3
  • 已保存回复3
  • 发布时间2022/9/21 15:59
  • 上次更新2023/10/27 10:26:56
查看原帖
80pts求助
684865
ZYU_楼主2022/9/21 15:59
#include<bits/stdc++.h>
using namespace std;
int N,L,R,a[10000],i,add,ans,j;
int Minup,Mindown,Maxup,Maxdown;
int main()
{
    cin>>N;
    for(i=1;i<=N;i++)
    {
        scanf("%d",&a[i]);add+=a[i];
    }
    cin>>L>>R;
    if((add/N)<L){cout<<-1;return 0;}
    for(i=1;i<=N;i++)
    {
        if(a[i]<=L) {
            Minup += L-a[i];
            Maxup += R-a[i];
        }
        else if(a[i]>=R) {
            Mindown += a[i]-R;
            Maxdown += a[i]-L;
        }
        else{
            Maxup += R-a[i];
            Maxdown += a[i]-L;
        }
    }
    if(Maxup<Minup||Maxdown<Mindown){
        cout<<-1;return 0;
    }
    cout<<max(Minup,Mindown);
    return 0;
}

#2#4WA,求助TAT

2022/9/21 15:59
加载中...