Pagini recente » Cod sursa (job #662050) | Cod sursa (job #2027142) | Cod sursa (job #338703) | Cod sursa (job #2472511) | Cod sursa (job #883308)
Cod sursa(job #883308)
#include <cstdio>
int sol[1001][29], res[29][29], n, p, i, j, k;
char a, b, sir[4];
long long solf;
int main()
{
freopen("nrcuv.in", "r", stdin);
freopen("nrcuv.out", "w", stdout);
sol[1][1] = 26;
scanf("%d %d\n", &n, &p);
for(i=1;i<=p;i++)
{
scanf("%c %c\n", &a, &b);
res[(int)a-'a'+1][(int)b-'a'+1] = 1;
res[(int)b-'a'+1][(int)a-'a'+1] = 1;
}
for(i=1;i<=26;i++)
{
sol[1][i] = 1;
}
for(i=2;i<=n;i++)
{
for(j=1;j<=26;j++)
{
for(k=1;k<=26;k++)
{
if(res[j][k]+ res[k][j] == 0)
{
sol[i][j] += sol[i-1][k];
sol[i][j] %=104659;
}
}
}
}
for(i=1;i<=26;i++)
{
solf += sol[n][i];
}
printf("%d", solf%104659);
return 0;
}