Pagini recente » Cod sursa (job #3134716) | Sport2 | Cod sursa (job #312769) | Cod sursa (job #3276671) | Cod sursa (job #3127216)
#include <fstream>
using namespace std;
ifstream cin("nrcuv.in");
ofstream cout("nrcuv.out");
bool frv[26][26];
int dp[1001][26];
int main()
{
int n,m,i,j,k;
char a,b;
cin>>n>>m;
for(i=0;i<m;i++){
cin>>a>>b;
frv[a-'a'][b-'a']=frv[b-'a'][a-'a']=1;
}
for(i=0;i<26;i++)
dp[0][i]=1;
for(i=1;i<n;i++){
for(j=0;j<26;j++){
for(k=0;k<26;k++){
if(frv[j][k]==0 && frv[k][j]==0){
dp[i][j]+=dp[i-1][k];
if(dp[i][j]>=104659)dp[i][j]-=104659;
}
}
}
}
int s=0;
for(i=0;i<26;i++){
s+=dp[n-1][i];
if(s>=104659)
s-=104659;
}
cout<<s;
return 0;
}