Cod sursa(job #418586)

Utilizator AndrewXJuduc Paul Andrei AndrewX Data 16 martie 2010 08:43:21
Problema Grigo Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.45 kb
#include<stdio.h>
#define max 1000003
int n,m,f[100005],d[100005];
int main ()
{
    int i,x;
    freopen("grigo.in","r",stdin);
    freopen("grigo.out","w",stdout);
    scanf("%d%d",&n,&m);
    for(i=1;i<=m;i++)
    {
        scanf("%d",&x);
        f[x]=1;
    }
    d[0]=1;
    for(i=1;i<=n;i++)
        if(f[i])
            d[i]=d[i-1];
        else
            d[i]=((long long)d[i-1]*(i-1))%max;
    printf("%d",d[n]);
    return 0;
}