Pagini recente » Cod sursa (job #3269632) | Cod sursa (job #2856696) | Cod sursa (job #342133) | Cod sursa (job #1923123) | Cod sursa (job #2409154)
#include <iostream>
#include <cstdio>
#include <bitset>
#define MOD 104659
using namespace std;
int n,m;
char a,b;
int dp[1005][30];
bitset<30> ap[30];
int main()
{
freopen("nrcuv.in","r",stdin);
freopen("nrcuv.out","w",stdout);
scanf("%d%d", &n,&m);
for(int i = 0; i < m; ++i){
scanf("\n%c %c", &a,&b);
ap[a-'a'][b-'a'] = ap[b-'a'][a-'a'] = 1;
}
for(int i = 0; i < 26; ++i)
dp[1][i] = 1;
for(int i = 2;i<=n;++i)
for(int j = 0; j < 26; ++j)
for(int k = 0; k < 26; ++k)
if(!ap[j][k])
dp[i][j] = (dp[i][j]+dp[i-1][k])%MOD;
int rez = 0;
for(int i = 0; i < 26; ++i)
rez = (rez + dp[n][i])%MOD;
cout<<rez;
return 0;
}