Cod sursa(job #2209820)

Utilizator YetoAdrian Tonica Yeto Data 4 iunie 2018 20:16:36
Problema Lista lui Andrei Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.64 kb
#include <fstream>
using namespace std;
int n, m, i, j, k, s;
char l1, l2;
int a[28][28], D[2100][28];

int main () {
    ifstream fin ("nrcuv.in");
    ofstream fout ("nrcuv.out");
    fin>>n>>m;
    for (i=1;i<=m;i++) {
        fin>>l1>>l2;
        a[l1-'a'][l2-'a']=1;
    }

    for (i=0;i<=25;i++) {
        D[1][i]=1;
    }

    for (i=2;i<=n;i++) {
        for (j=0;j<=25;j++)
            for (k=0;k<=25;k++)
                if (a[k][j]==0)
                    D[i][j] = (D[i-1][k] + D[i][j]) % 104659;
    }

    for (i=0;i<=25;i++) {
        s = (s+D[n][i])%104659;
    }

    fout<<s%104659;
    return 0;
}