Pagini recente » Cod sursa (job #740634) | Cod sursa (job #2774050) | Cod sursa (job #839250) | Cod sursa (job #2780739) | Cod sursa (job #2626716)
#include <bits/stdc++.h>
using namespace std;
int a[27][27];
int b[27][1003];
int v[27];
int n, m;
int main()
{
freopen("nrcuv.in", "r", stdin);
freopen("nrcuv.out", "w", stdout);
scanf("%d %d",&n,&m);
int x1, x2;
char c1, c2,d1;
scanf("%d",&d1);
int i, j;
for(i=1;i<=m;i++) {
scanf("%c %c",&c1,&c2);
x1 = int(c1) - 96;
x2 = int(c2) - 96;
scanf("%c",&d1);
a[x1][x2] = a[x2][x1] = 1;
}
for(i=1;i<=26;i++)
{
for(j=1;j<=26;j++)
b[i][1] += a[i][j];
}
for(i=1;i<=26;i++)
b[i][1] = 26 - b[i][1];
int t = 2;
while(t < n)
{
for(i=1;i<=26;i++) {
for(j=1;j<=26;j++)
{
if(a[i][j] == 0)
b[i][t] += b[j][t-1];
}
}
t++;
}
int s = 0;
for(i=1;i<=26;i++)
{
s += b[i][n-1]%104659;
}
printf("%d",s);
return 0;
}