Pagini recente » Cod sursa (job #2820372) | Cod sursa (job #831252) | Cod sursa (job #2029707) | Cod sursa (job #2789751) | Cod sursa (job #1494056)
#include <bits/stdc++.h>
#define MOD 104659
using namespace std;
int dp[1005][26];
int mat[26][26];
int main()
{
int i, j, k, n, m, cnt;
char a, b;
ifstream fin("nrcuv.in");
fin >> n >> m;
for(i = 1; i <= m; i++)
{
fin >> a >> b;
mat[a - 'a'][b - 'a'] = mat[b - 'a'][a - 'a'] = 1;
}
fin.close();
for(i = 0; i < 26; i++)
dp[1][i] = 1;
for(i = 2; i <= n; i++)
for(j = 0; j < 26; j++)
for(k = 0; k < 26; k++)
if(!mat[j][k] && !mat[k][j])
dp[i][j] = (dp[i][j] + dp[i - 1][k]) % MOD;
cnt = 0;
for(int i = 0; i < 26; i++)
cnt = (cnt + dp[n][i]) % MOD;
ofstream fout("nrcuv.out");
fout << cnt << "\n";
fout.close();
return 0;
}