为什么本地运行可以但是oj上报runtime error

问题遇到的现象和发生背景

#include<stdio.h>
#include<math.h>
#include<stdlib.h>
int main(){
long long n,m;
int max=0;
int sum=0;
long long cnt=0;
scanf("%lld%lld",&n,&m);
int a[100];
for(int i=0;i<n;++i){
scanf("%d",&a[i]);
if(a[i]>max){
max=a[i];
}
}
for(long long i=0;i<=max;++i){
for(int j=0;j<n;++j){
if(a[j]>i){
sum=sum+(a[j]-i);
}
}
if(sum==m){
cnt=i;
}
sum=0;
}
printf("%lld",cnt);
return 0;
}

sum定义成long long吧,不然if(sum==m)显然有问题

算法问题,超时了,他给的测试用如果范围大你的时间复杂度太大了

如果在oj上运行,你的scanf怎么输入? 不卡死在那了~

应该都是用初始化好的输入样例的吧~