Cod sursa(job #2262003)
| Utilizator | Data | 16 octombrie 2018 21:17:35 | |
|---|---|---|---|
| Problema | Lista lui Andrei | Scor | 45 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva de probleme | Marime | 0.62 kb |
#include <fstream>
using namespace std;
ifstream fin("nrcuv.in");
ofstream fout("nrcuv.out");
int p[30][30], n, m, v[30], w[30];
int main()
{
fin>>n>>m;
for(int i=1;i<=m;++i)
{
char x, y;
fin>>x>>y;
p[x-'a'][y-'a']=p[y-'a'][x-'a']=1;
}
for(int i=0;i<26;++i) v[i]=1;
for(int i=2;i<=n;++i)
{
for(int j=0;j<26;++j)
for(int k=0;k<26;++k)
if(!p[j][k]) w[k]+=v[j], w[k]%=104659;
for(int j=0;j<26;++j) v[j]=w[j], w[j]=0;
}
int s=0;
for(int i=0;i<=26;++i) s+=v[i];
fout<<s<<"\n";
return 0;
}
