Cod sursa(job #2376855)

Utilizator alex02Grigore Alexandru alex02 Data 8 martie 2019 18:10:26
Problema Lista lui Andrei Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.81 kb
#include <iostream>
#include <fstream>
#define MOD 104659
using namespace std;

ifstream f("nrcuv.in");
ofstream g("nrcuv.out");

int n,m,d[1010][1010];
bool frec[100][100]={false};

void generare()
{
    for(int i=1; i<=30; i++)
        d[1][i]=1;
    for(int i=2; i<=n; i++)
        for(int j=1; j<=26; j++)
            for(int k=1; k<=26; k++)
                if(frec[k][j]==false && frec[j][k]==false)
                    d[i][j]= (d[i][j] + d[i-1][k])%MOD;

}

int main()
{
    f>>n>>m;
    for(int i=0; i<m; i++)
    {
        char aux1,aux2;
        f>>aux1>>aux2;
        frec[aux1-'a'+1][aux2-'a'+1]=true;
        frec[aux2-'a'+1][aux1-'a'+1]=true;

    }
    generare();
    int rez=0;
    for(int i=1; i<=26; i++)
        rez=(rez+d[n][i])%MOD;
    g<<rez<<endl;
    return 0;
}