P1866 10分 C语言本地能过,洛谷上不能过。
  • 板块P1866 编号
  • 楼主jsj8051
  • 当前回复7
  • 已保存回复7
  • 发布时间2021/10/17 21:43
  • 上次更新2023/11/4 03:26:25
查看原帖
P1866 10分 C语言本地能过,洛谷上不能过。
546219
jsj8051楼主2021/10/17 21:43
#include<stdio.h>
long long M=1000000007;
int main()
{
	int n,i,j,temp,count=0;
	scanf("%d",&n);
	unsigned long long a[n],ans=1;
	for(i=0;i<n;i++)
	{
		scanf("%d",&a[i]);
	}
	for(j=0;j<n-1;j++)
	{
		for(i=0;i<n-j-1;i++)
		{
			if(a[i]>a[i+1])
			{
				temp=a[i];
				a[i]=a[i+1];
				a[i+1]=temp;
			}
		}
	}
	for(i=1;i<=n;i++)
	{
		if(a[count]-i<0)
		{
			printf("0");
			return 0;
		}
		count++;
	}
	count=0;
	for(i=0;i<n;i++)
	{
		ans=ans*(a[i]-i)%M;
        ans%=M;
		count++;
	}
	printf("%d",ans);
}

求大佬指点

2021/10/17 21:43
加载中...