Pagini recente » Cod sursa (job #1695075) | Cod sursa (job #1274199) | Cod sursa (job #3182857) | Cod sursa (job #387161) | Cod sursa (job #65251)
Cod sursa(job #65251)
#include <cstdio>
FILE *in = fopen("nrcuv.in","r"), *out = fopen("nrcuv.out","w");
int rez[1000][26];
char p[26][26];
int n, m;
void read()
{
char a, b;
fscanf(in, "%d %d", &n, &m);
for ( int i = 0; i < m; ++i )
{
fscanf(in, "%1s %1s", &a, &b);
p[a-'a'][b-'a'] = 1;
p[b-'a'][a-'a'] = 1;
}
}
int main()
{
read();
for ( int j = 0; j < 26; ++j )
rez[0][j] = 26;
for ( int i = 1; i < n; ++i )
for ( int j = 0; j < 26; ++j )
for ( int k = 0; k < 26; ++k )
if ( !p[j][k] && !p[k][j] )
rez[i][j] = (rez[i][j] + rez[i-1][k]) % 104659;
// for ( int i = 0; i < n; ++i )
// {
// for ( int j = 0; j < 26; ++j )
// printf("%d ", rez[i][j]);
// printf("\n");
// }
fprintf(out, "%d\n", rez[n-1][25]);
return 0;
}