Pagini recente » Cod sursa (job #2317189) | Cod sursa (job #2792887) | Cod sursa (job #2731839) | Cod sursa (job #678755) | Cod sursa (job #375114)
Cod sursa(job #375114)
#include <stdio.h>
#define N 26
#define X 104659
#define Nmax 1002
int S[N + 1][Nmax], viz[N + 1][N + 1];
int n, m, k, i, j, sol;
char x, y;
int main() {
FILE *f = fopen("nrcuv.in", "r");
FILE *g = fopen("nrcuv.out", "w");
fscanf(f, "%d %d", &n, &m);
for (i = 1; i <= m; i++) {
fscanf(f, "\n%c %c", &x, &y);
x -= 96, y -= 96;
viz[x][y] = viz[y][x] = 1;
}
for (i = 1; i <= N; i++)
S[i][1] = 1;
for (k = 2; k <= n; k++) {
for (i = 1; i <= N; i++) {
for (j = 1; j <= N; j++)
if (!viz[i][j])
S[i][k] = (S[i][k] + S[j][k-1]) % X;
}
}
for (i = 1; i <= N; i++)
sol += S[i][n];
fprintf(g, "%d", sol);
fclose(f);
fclose(g);
return 0;
}