Pagini recente » Cod sursa (job #1439248) | Cod sursa (job #1767225) | Cod sursa (job #1115013) | Cod sursa (job #2887609) | Cod sursa (job #757156)
Cod sursa(job #757156)
#include<cstdio>
int a[27][1001],s,n;
bool b[27][27];
int lista(int x, int i)
{
int j;
if(x==1)
return 1;
for(j=1;j<=26;++j)
if(!b[j][i])
if(a[j][x-1]==0)
a[i][x]=(a[i][x]%104659+lista(x-1,j)%104659)%104659;
else
a[i][x]=(a[i][x]%104659+a[j][x-1]%104659)%104659;
if(x==n)
s=(s+a[i][x]%104659)%104659;
return a[i][x];
}
int main()
{
freopen("nrcuv.in","r",stdin);
freopen("nrcuv.out","w",stdout);
int m,i;
char x,y;
scanf("%d %d\n",&n,&m);
for(i=1;i<=m;++i)
{
scanf("%c %c\n",&x,&y);
x-='a';y-='a';
b[x+1][y+1]=b[y+1][x+1]=1;
}
for(i=1;i<=26;++i)
lista(n,i);
printf("%d",s);
return 0;
}