同一份代码提交了几次(有微调,但算法不变),分数在90-70之间浮动,而且错的点在本地(wsl)没问题。
太玄学了吧。
#include<cstdio>
#include<algorithm>
int cmp(int x,int y){return x<=y;}
int main(){
int n,mn[51];
long long ans=1;
scanf("%d",&n);
for(int i=0;i<n;i++){
scanf("%d",&mn[i]);
}
std::sort(mn,mn+n,cmp);
for(int i=0;i<n;i++){
ans*=(long long)(mn[i]-i);
ans%=(long long)1000000007;
}
printf(ans<0?"0\n":"%lld\n",ans);
return 0;
}