Pagini recente » Cod sursa (job #370541) | Cod sursa (job #1916648) | Cod sursa (job #2152830) | Cod sursa (job #513331) | Cod sursa (job #828414)
Cod sursa(job #828414)
#include<cstdio>
#define MOD(x) (x>=104659)?x-=104659:x=x
bool S[27][27];
long long M[1005][27],sol;
int i,j,n,m,k;
char a,b;
int main()
{
freopen("nrcuv.in","r",stdin);
freopen("nrcuv.out","w",stdout);
scanf("%d %d\n",&n,&m);
for(i=1;i<=m;i++)
{
scanf("%c %c\n",&a,&b);
a=a-'a'+1;
b=b-'a'+1;
S[a][b]=S[b][a]=1;
}
for(i=1;i<=26;i++) M[1][i]=1;
if(n==1) sol=26;
for(i=2;i<=n;i++)
{
for(j=1;j<=26;j++)
{
for(k=1;k<=26;k++)
{
if(S[j][k]+S[k][j]==0) M[i][j]+=M[i-1][k];
MOD(M[i][j]);
}
if(i==n) sol+=M[i][j];
MOD(sol);
}
}
printf("%lld\n",sol);
return 0;
}