Pagini recente » Cod sursa (job #561933) | Cod sursa (job #1435705) | Cod sursa (job #2990464) | Cod sursa (job #3292992) | Cod sursa (job #607513)
Cod sursa(job #607513)
#include <stdio.h>
#define nrlit 26
#define nmax 101
#define mod 104659
int main () {
freopen ("nrcuv.in", "r", stdin);
freopen ("nrcuv.out", "w", stdout);
int mat[nmax][nrlit], lst[nrlit][nrlit], i, j, k, n, m, s;
char l1, l2;
scanf ("%d %d\n", &n, &m);
for (i = 0 ; i < nrlit; i++)
for (j = 0; j < nrlit; j++)
lst[i][j] = 0;
for (i = 0; i < m; i++) {
scanf ("%c %c\n", &l1, &l2);
l1 -= 'a'; l2 -= 'a';
lst[l1][l2] = 1; lst[l2][l1] = 1;
}
i = 1;
for (j = 0; j < nrlit; j++)
mat[i][j] = 1;
for ( i = 2; i <= n; i++) {
for (j = 0; j < nrlit; j++) {
s = 0;
for (k = 0; k < nrlit; k++)
if (!lst[j][k])
s = (s + mat[i-1][k]) % mod;
mat[i][j] = s;
}
}
s = 0;
for ( j = 0; j < nrlit; j++)
s = (s + mat[n][j]) % mod;
printf ("%d\n", s);
return 0;
}