Cod sursa(job #491895)

Utilizator taseTanase Alexandru tase Data 12 octombrie 2010 19:06:50
Problema Lista lui Andrei Scor 45
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.54 kb
#include<stdio.h>
int v[27][27],a[1001][27];
int main()
{
	freopen("nrcuv.in","r",stdin);
	freopen("nrcuv.out","w",stdout);
	int n,m,i,j,k,s;
	char x,y;
	scanf("%d%d\n",&n,&m);
	for(i=1;i<=m;++i)
	{
		scanf("%c %c\n",&x,&y);
		v[x-'a'+1][y-'a'+1]=v[y-'a'+1][x-'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)
		{	
			s=0;
			for(k=1;k<=26;++k)
				if(v[j][k]==0) s=s+a[i-1][k]%104659;
			a[i][j]=s;
		}
	s=0;
	for(j=1;j<=26;++j)
		s=s+a[n][j]%104659;
	printf("%d",s);		
	return 0;
}