Pagini recente » Cod sursa (job #315963) | Cod sursa (job #112678) | Cod sursa (job #209324) | Cod sursa (job #1657453) | Cod sursa (job #833151)
Cod sursa(job #833151)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in ("nrcuv.in");
ofstream out ("nrcuv.out");
const int MOD = 104659;
bool Blocked[150][150];
int Best[1010][150];
int main ()
{
int N, M, i, Ans = 0;
char j, k;
char a, b;
in >> N >> M;
while (M --){
in >> a >> b;
Blocked[a][b] = 1;
Blocked[b][a] = 1;
}
for (i = 1; i <= N; i ++)
Best[1][i] = 1;
for (i = 1; i <= N; i ++)
for (j = 'a'; j <= 'z'; j ++)
for (k = 'a'; k <= 'z'; k ++)
if (!Blockez[j][k])
Best[i][j] = (Best[i - 1][j] + Best[i][k]) % MOD;
for (j = 'a'; j <= 'z'; j ++)
Ans = (Ans + Best[N][j]) % MOD;
out << Ans;
return 0;
}