Pagini recente » Cod sursa (job #1786868) | Cod sursa (job #1315805) | Cod sursa (job #1584437) | Cod sursa (job #252571) | Cod sursa (job #1184640)
#include <cstdio>
#include <cstring>
using namespace std;
int mat[1005][30];
bool com[30][30];
int main()
{
freopen("nrcuv.in","r",stdin);
freopen("nrcuv.out","w",stdout);
int n,m,i,j,k,s=0;
char c1,c2;
scanf("%d%d\n",&n,&m);
for(i=1;i<=m;++i)
{
scanf("%c %c\n",&c1,&c2);
com[c1-'a'+1][c2-'a'+1]=1;
com[c2-'a'+1][c1-'a'+1]=1;
}
for(j=1;j<=26;++j)
mat[1][j]=1;
for(i=2;i<=n;++i)
for(j=1;j<=26;++j)
for(k=1;k<=26;++k)
if(com[j][k]==0)
mat[i][j]=(mat[i][j]+mat[i-1][k])%104659;
for(j=1;j<=26;++j)
s=(s+mat[n][j])%104659;
printf("%d",s);
return 0;
}