Pagini recente » Cod sursa (job #2078875) | Cod sursa (job #2228533) | Cod sursa (job #335839) | Cod sursa (job #102535) | Cod sursa (job #2476934)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("nrcuv.in");
ofstream fout("nrcuv.out");
long long n,k,q,v[100005];
int dp[1005][150],mat[1005][150];
char a,b;
int main()
{
cin>>n>>k;
for(int i=1;i<=k;i++){
cin>>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]%=104659;
}
}
}
}
int ans=0;
for(int i='a';i<='z';i++){
ans+=dp[n][i];
ans%=104659;
}
cout<<ans;
return 0;
}