Cod sursa(job #187795)

Utilizator Andrei_ScorpioAndreiana Andrei Daniel Andrei_Scorpio Data 5 mai 2008 15:11:01
Problema Lista lui Andrei Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.63 kb
#include<fstream.h>
long x[1002][26],su;
int i,n,m,j,s,a[26][26];
char a1,a2;
ifstream f("lista.in");
ofstream g("lista.out");
int main()
{
f>>n>>m;
//f.get();
for( i=0;i<m;i++)
	{
	f>>a1;
	f>>a2;
	a[a1-'a'][a2-'a']=1;
	a[a2-'a'][a1-'a']=1;
	}
for(i=0;i<26;i++)
	x[0][i]=1;
for(i=1;i<n;i++)
	for(j=0;j<26;j++)
		{
		for(s=0;s<26;s++)
			{
			if(a[j][s]==0)
				{
				if(x[i][j]+x[i-1][s]<104659)
					x[i][j]+=x[i-1][s];
				else
					x[i][j]=x[i-1][s]+x[i][j]-104659;
				}
			}
		}

for(i=0;i<26;i++)
	if(su+x[n-1][i]<104659)
		su+=x[n-1][i];
	else
		su=su+x[n-1][i]-104659;
g<<su;
g.close();
return 0;
}