Pagini recente » Cod sursa (job #2486686) | Cod sursa (job #548208) | Cod sursa (job #1631985) | Cod sursa (job #1658280) | Cod sursa (job #413098)
Cod sursa(job #413098)
#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] and !w[k][j]){a[i][j] += a[i-1][k]; if(a[i][j] > mod) a[i][j] -= mod;}
int s=0;
for(i = 1; i <= 26; ++i){s += a[n][i]; if(s > mod)s -=mod;}
printf("%d\n", s);
return 0;
}