Pagini recente » Borderou de evaluare (job #2860806) | Borderou de evaluare (job #3210774) | Cod sursa (job #315185)
Cod sursa(job #315185)
#include<stdio.h>
int n,k;
int a[30][30];
int v[30][1002];
void read()
{
freopen("nrcuv.in","r",stdin);
freopen("nrcuv.out","w",stdout);
scanf("%d%d\n",&n,&k);
int i;
char x,y;
for(i=1;i<=k;i++)
{
scanf("%c %c\n",&x,&y);
a[x-'a'+1][y-'a'+1]=a[y-'a'+1][x-'a'+1]=1;
}
}
void rez()
{
int i,j,k;
for(i=1;i<=26;i++)
v[i][1]=1;
for(j=2;j<=n;j++)
for(i=1;i<=26;i++)
for(k=1;k<=26;k++)
if(a[i][k]==0)
{
v[i][j]+=v[k][j-1];
v[i][j]%=104659;
}
int s=0;
for(i=1;i<=26;i++)
s=(s+v[i][n])%104659;
printf("%d",s);
}
int main()
{
read();
rez();
return 0;
}