Pagini recente » Cod sursa (job #347108) | Cod sursa (job #2970786) | Cod sursa (job #1951013) | Cod sursa (job #1083697) | Cod sursa (job #784243)
Cod sursa(job #784243)
#include<stdio.h>
#include<fstream>
using namespace std;
#define MOD 104659
#define MAXN 1002
#define MAXL 250
int A[ MAXN ][ MAXL ];
int n, m, i, j, k, res;
char W[ 250 ][ 250 ];
char c1, c2;
int main()
{
ifstream f("nrcuv.in");
f >> n >> m;
for(i = 1; i <= m; ++i)
f >> c1 >> c2, W[ (int) c1 ][ (int) c2 ] = W[ (int) c2 ][ (int) c1 ] = 1;
f.close();
for(j = 'a'; j <= 'z'; ++j)
A[1][j] = 1;
for(i = 2; i <= n; ++i)
for(j = 'a'; j <= 'z'; ++j)
for(k = 'a'; k <= 'z'; ++k)
if(!W[j][k])
A[i][j] += A[i-1][k], A[i][j] %= MOD;
for(j = 'a'; j <= 'z'; ++j)
res += A[n][j], res %= MOD;
FILE *g = fopen("nrcuv.out", "w");
fprintf(g, "%d\n", res);
fclose(g);
return 0;
}