Pagini recente » Cod sursa (job #2234382) | Cod sursa (job #1027221) | Cod sursa (job #1619598) | Cod sursa (job #2778285) | Cod sursa (job #46051)
Cod sursa(job #46051)
#include <stdio.h>
long N,M,i,j,k,p,q,s;
char c1,c2;
long l1[27],l2[27];
bool v[27][27];
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",&c1,&c2);
v[c1-'a'+1][c2-'a'+1]=1;
v[c2-'a'+1][c1-'a'+1]=1;
}
for (i='a';i<='z';i++){
l1[i-'a'+1]=1;
}
for (i=2;i<=N;i++){
for (j=1;j<=26;j++)l2[j]=0;
for (j=1;j<=26;j++){
for (k=1;k<=26;k++){
if (!v[j][k])l2[k]+=l1[j];
}
}
for (j=1;j<=26;j++)l1[j]=l2[j]%104659;
}
for (i=1;i<=26;i++){
s+=l1[i];
}
printf("%d\n",s%104659);
return 0;
}