Cod sursa(job #536241)

Utilizator tudorsTudor Siminic tudors Data 18 februarie 2011 13:56:21
Problema Lista lui Andrei Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.56 kb
#include <fstream>
using namespace std;

int i,j,k,n,m;
int A[40][40],R[1001][40],rez;
char x,y;

ifstream f("nrcuv.in");
ofstream g("nrcuv.out");

int main()
{
	f>>n>>m;
	for (i=1;i<=m;++i)
	{
		f>>x>>y;
		x-=96;
		y-=96;
		A[int(x)][int(y)]=1;
		A[int(y)][int(x)]=1;
	}
	for (i=1;i<='z'-96;++i)
		R[1][i]=1;
	for (i=2;i<=n;++i)
		for (j=1;j<='z'-96;++j)
			for (k=1;k<='z'-96;++k)
				if (!A[j][k])
					R[i][j]=(R[i][j]+R[i-1][k])%104659;
	for (i=1;i<='z'-96;++i)
		rez+=R[n][i];
	g<<rez%104659;
	f.close();
	g.close();
	return 0;
}