Cod sursa(job #1522740)

Utilizator adu18sptAndrei Mircea adu18spt Data 11 noiembrie 2015 22:31:04
Problema Lista lui Andrei Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.7 kb
#include <fstream>
using namespace std;
ifstream fin ("nrcuv.in");
ofstream fout("nrcuv.out");
int a[26][26],d[26][1003];
char c1,c2;
int n,m,s;
int main() {

    fin>>n>>m;
    for (int i=1;i<=m;i++) {
        fin>>c1>>c2;
        a[c1-'a'][c2-'a'] = 1;
        a[c2-'a'][c1-'a'] = 1;
    }

    for (int i=0;i<26;i++)
        d[i][1]=1;


    for (int i=2;i<=n;i++) {

        for (int j=0;j<=25;j++) {

            for (int k=0;k<=25;k++)
                if (a[k][j] == 0) {

                    d[j][i] += d[k][i-1];

                    d[j][i]%=104659;
                }
        }
    }
    for (int i=0;i<26;i++) {
        s+=d[i][n];
        s%=104659;
    }
    fout<<s;
}