Pagini recente » Cod sursa (job #742538) | Cod sursa (job #2198470) | Cod sursa (job #1496630) | Cod sursa (job #2799305) | Cod sursa (job #1148372)
#include <cstdio>
#define MOD 104659
#define mini 30
#define mult 100000
int mat[mini][mini],S[mini][mult];
int n,i,k,s,l,j;
char c1,c2;
int main(){
freopen("nrcuv.in","r",stdin);
freopen("nrcuv.out","w",stdout);
scanf("%d%d",&n,&k);
for(i=1;i<=k;i++){
scanf("%c%c",&c1,&c2);
mat[c1-'a'][c2-'a']=mat[c2-'a'][c1-'a']=1;
}
for(i=0;i<=25;i++)
S[i][1]=1;
for(i=2;i<=n;i++)
for(j=0;j<=25;j++)
for(l=0;l<=25;l++)
if(mat[j][l]==0)
S[j][i]+=S[l][i-1],S[j][i]%=MOD;
for(i=0;i<=25;i++)
s+=S[i][n],s=s%MOD;
printf("%d\n",s);
return 0;
}