Cod sursa(job #1156904)

Utilizator vladrochianVlad Rochian vladrochian Data 28 martie 2014 09:23:57
Problema Lista lui Andrei Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.51 kb
#include <fstream>
#define MOD 104659
using namespace std;
int n,m,dp[1001][26],v[26][26];
ifstream fin("nrcuv.in");
ofstream fout("nrcuv.out");
int main()
{
	char x,y;
	int i,j,k;
	fin>>n>>m;
	while(m--)
	{
		fin>>x>>y;
		v[x-'a'][y-'a']=v[y-'a'][x-'a']=1;
	}
	for(i=0;i<26;++i)
		dp[1][i]=1;
	for(i=2;i<=n;++i)
		for(j=0;j<26;++j)
			for(k=0;k<26;++k)
				if(!v[j][k])
					dp[i][k]=(dp[i][k]+dp[i-1][j])%MOD;
	for(i=0;i<25;++i)
		dp[n][25]+=dp[n][i];
	fout<<dp[n][25]%MOD<<"\n";
	return 0;
}