Pagini recente » Cod sursa (job #1628999) | Cod sursa (job #2163231) | Cod sursa (job #2830070) | Cod sursa (job #2697826) | Cod sursa (job #2635183)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("nrcuv.in");
ofstream fout("nrcuv.out");
const int mod=104659;
char frb[26][26];
char ca,cb;
long long d[2][26];
int n,m;
int main()
{
fin>>n>>m;
for(int i=0; i<m; i++)
{
fin>>ca>>cb;
frb[ca-'a'][cb-'a']=1;
frb[cb-'a'][ca-'a']=1;
}
for(int i=0; i<26; i++)
{
d[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(frb[k][j]==0) d[i%2][j]=(d[i%2][j]+d[(i-1)%2][k])%mod;
}
//cout<<d[i%2][j]<<" ";
}
//cout<<"\n";
}
long long sum=0;
for(int i=0; i<26; i++)
{
sum=(sum+d[n%2][i])%mod;
}
fout<<sum%mod;
return 0;
}