Cod sursa(job #1448006)

Utilizator akaprosAna Kapros akapros Data 5 iunie 2015 22:15:26
Problema Grigo Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include <cstdio>
#include <cstring>
#include <algorithm>
#define Nmax 100005
#define mod  1000003
using namespace std;
int n, j, m, v[Nmax];
long long i;
long long sol;
int main()
{
    freopen("grigo.in", "r", stdin);
    freopen("grigo.out", "w", stdout);
    scanf("%d %d", &n, &m);
    for (i = 1; i <= m; ++ i)
        scanf("%d", &v[i]);
    sort(v + 1, v + m + 1);
    sol = 1LL;
    for (i = 1; i <= n; ++ i)
    {
        if (v[j + 1] == i)
        ++ j;
        else
        sol = (sol * (i - 1) * 1LL ) % mod;
    }
    printf("%lld", sol);
    return 0;
}