Cod sursa(job #592745)

Utilizator paul_gabryelPaul Buda paul_gabryel Data 30 mai 2011 13:36:30
Problema Lista lui Andrei Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.53 kb

#include <cstdio>
#include <fstream>

using namespace std;

#define mm 104659

bool v[32][32];
int a[1024][32];

int main ()
{
	
	ifstream in ("nrcuv.in");
	freopen ("nrcuv.out","w",stdout);
	int n,m;
	char x,y;
	for(in>>n>>m;m;--m){
		in>>x>>y;
		v[x-'a'+1][y-'a'+1]=v[y-'a'+1][x-'a'+1]=1;
		}
	for(int i=1;i<=26;++i)
		a[1][i]=1;
	for(int i=2;i<=n;++i)
		for(int j=1;j<=26;++j)
			for(int k=1;k<=26;++k)
				if(!v[j][k])
					a[i][j]=(a[i][j]+a[i-1][k])%mm;
	int r=0;
	for(int i=1;i<=26;++i)
		r=(r+a[n][i])%mm;
	printf("%d",r);
	
	return 0;}