Pagini recente » Cod sursa (job #3176640) | Cod sursa (job #1412876) | Cod sursa (job #342331) | Cod sursa (job #1578853) | Cod sursa (job #413090)
Cod sursa(job #413090)
#include<stdio.h>
const char in[]="nrcuv.in", out[]="nrcuv.out";
const int N=1005, mod=104659;
int a[N][28], n, m, w[27][27], i, j, k;
int main()
{char x, y;
freopen(in,"r",stdin);
freopen(out,"w",stdout);
scanf("%d%d\n", &n, &m);
for(i = 1 ; i <= m; ++i)
{
scanf("%c %c\n",&x, &y);
w[x - 'a' + 1][y - 'a' + 1]= 1;
}
for(j = 1; j <= 26; ++j)
a[1][j]=1;
for(i = 2; i <= n; ++i)
for(j = 1; j <= 26; ++j)
for(k = 1; k <= 26; ++k)
if(w[j][k] or w[k][j])continue;
else a[i][j] += a[i-1][k], a[i][j] %= mod;
int s=0;
for(i = 1; i <= 26; ++i)
{s += a[n][i]; s %= mod;}
printf("%d\n", s);
return 0;
}