Cod sursa(job #1682343)

Utilizator Alexa2001Alexa Tudose Alexa2001 Data 10 aprilie 2016 10:33:20
Problema Lista lui Andrei Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.64 kb
#include <cstdio>

using namespace std;

const int Mod = 104659;

bool per[150][150];
int i,n,m,d[1005][150],s;
char x,y;

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

    scanf("%d%d\n", &n, &m);

    while(m--)
    {
        scanf("%c %c\n", &x, &y);
        per[x][y]=per[y][x]=1;
    }

    for(x='a'; x<='z'; ++x) d[1][x]=1;

    for(i=2; i<=n; ++i)
    for(x='a'; x<='z'; ++x)
    {
         for(y='a'; y<='z'; ++y)
         if(!per[x][y])
            d[i][x] += d[i-1][y];

         d[i][x]%=Mod;
    }

    s=0;
    for(x='a'; x<='z'; ++x) s += d[n][x];

    printf("%d\n", s%Mod);

    return 0;
}