Cod sursa(job #706161)

Utilizator repp4raduRadu-Andrei Szasz repp4radu Data 5 martie 2012 18:11:29
Problema Grigo Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.65 kb
#include <fstream>

#define MAX 100050

using namespace std;

int dp[MAX], n, m;
bool important[MAX];

void citire()
{
    ifstream in("grigo.in");
    int a;
    in>>n>>m;
    while(m--)
    {
        in>>a;
        important[a] = true;
    }
    in.close();
}

void solve()
{
    int i;
    dp[0] = 1;
    for(i = 1; i <= n; i++)
    {
        if(important[i])
            dp[i] = dp[i - 1];
        else
            dp[i] = dp[i - 1] * (i - 1);
    }
}

void afisare()
{
    ofstream out("grigo.out");
    out<<dp[n];
    out.close();
}

int main()
{
    citire();
    solve();
    afisare();
    return 0;
}