Pagini recente » Cod sursa (job #828705) | Cod sursa (job #1279524) | Cod sursa (job #2056959) | Cod sursa (job #2856983) | Cod sursa (job #2476912)
#include <iostream>
#include <fstream>
#define NMAX 1005
#define CMAX 150
#define MOD 104659
using namespace std;
ifstream fin("nrcuv.in");
ofstream fout("nrcuv.out");
int mat[CMAX][CMAX];
int dp[NMAX][CMAX];
int n,k;
int main()
{
fin >> n >> k;
for(int i=1;i<=k;i++){
char a,b;
fin >> a >> b;
mat[a][b]=mat[b][a]=1;
}
for(int i='a';i<='z';i++){
dp[1][i]=1;
}
for(int i=2;i<=n;i++){
for(int a='a';a<='z';a++){
for(int b='a';b<='z';b++){
if(mat[a][b]==0){
dp[i][b]+=dp[i-1][a];
dp[i][b]%=MOD;
}
}
}
}
int ans=0;
for(int i='a';i<='z';i++){
ans+=dp[n][i];
ans%=MOD;
}
fout << ans;
}