Cod sursa(job #1701042)

Utilizator catu_bogdan_99Catu Bogdan catu_bogdan_99 Data 12 mai 2016 00:11:22
Problema Lista lui Andrei Scor 35
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.78 kb
#include <cstdio>
#define DIM 1005
using namespace std;

int v[DIM][30];
bool adi[256][256];

int main()
{

    freopen("nrcuv.in","r",stdin);
    freopen("nrcuv.out","w",stdout);

    int n, m, i, j, s, t, d, k;
    char x, y, z;


    scanf("%d%d\n",&n,&m);
    for( i = 1; i <= m; ++i ){
        scanf("%c%c%c\n",&x,&z,&y);
        adi[x-'a'+1][y-'a'+1] = adi[y-'a'+1][x-'a'+1] = 1;
    }

    for( i = 1; i <= 26; ++i ) v[1][i] = 1;

    for( i = 1; i <= n; ++i ){
        for( j = 1; j <= 26; ++j ){
            for( k = 1; k <= 26; ++k ){
                if( !adi[j][k] )
                    v[i][j] += v[i-1][k];
            }
        }
    }

    s = 0;
    for( i = 1; i <= 26; ++i )
        s += v[n][i];

    printf("%d ",s);


    return 0;

}