Pagini recente » Cod sursa (job #1384171) | Cod sursa (job #1166054) | Cod sursa (job #1512279) | Cod sursa (job #3277748) | Cod sursa (job #2396116)
#include <fstream>
using namespace std;
const int mod=104659;
long long dp[1005][30],v[30][30];
int main()
{
ifstream cin("nrcuv.in");
ofstream cout("nrcuv.out");
int n,m;
char a,b;
cin>>n>>m;
for(int i=1; i<=m; i++)
{
cin>>a>>b;
v[a-'a'][b-'a']=1;
v[b-'a'][a-'a']=1;
}
for(int i=0; i<26; i++)
dp[1][i]=1;
for(int i=1; i<n; i++)
for(int j=0; j<26; j++)
for(int z=0; z<26; z++)
if(v[j][z]==0)
dp[i+1][z]=(dp[i][j]+dp[i+1][z])%mod;
long long s=0;
for(int i=0;i<26;i++)
s=(dp[n][i]+s)%mod;
cout<<s;
return 0;
}