Cod sursa(job #1027484)

Utilizator killer301Ioan Andrei Nicolae killer301 Data 12 noiembrie 2013 20:11:36
Problema Lista lui Andrei Scor 35
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.62 kb
#include <cstdio>

using namespace std;

bool c[30][30];
int d[1001][30];

int main()
{
    freopen("nrcuv.in", "r", stdin);
    freopen("nrcuv.out", "w", stdout);
    int n, m, s;
    char a, b, x;
    scanf("%d%d%d", &n, &m, &x);
    for(int i=0;i<m;i++)
    {
    	scanf("%c%c%c%c", &a, &x, &b, &x);
    	c[a-'a'][b-'a']=1;
    	c[b-'a'][a-'a']=1;
    }
    for(int i=0;i<26;i++)
		d[1][i]=1;
    for(int i=2;i<=n;i++)
	{
		for(int j=0;j<26;j++)
			for(int k=0;k<26;k++)
				if(c[j][k]==0)
					d[i][j]+=d[i-1][k];
	}
	s=0;
	for(int i=0;i<26;i++)
		s+=d[n][i];
	printf("%d", s);
    return 0;
}