Cod sursa(job #3210357)
| Utilizator | Data | 6 martie 2024 01:01:38 | |
|---|---|---|---|
| Problema | Grigo | Scor | 10 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva de probleme | Marime | 0.59 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream in("grigo.in");
ofstream out("grigo.out");
const int nmax=100000, mod=1000003;
int n, m, v[nmax+1], f[nmax+1];
int main()
{
in>>n>>m;
for(int i=1; i<=m; i++)
{
in>>v[i];
f[v[i]]++;
}
//sort(v+1, v+m+1);
long long rez=1;
for(int i=2; i<=n; i++)
{
if(f[i]==1)//vizibil-o singura posibiliate
{
rez=rez*1;
}
else//invizibil-poate lua orice valoare de la 1 la i-1
{
rez=rez*(i-1);
}
}
out<<rez;
}
