Cod sursa(job #1154416)

Utilizator mateidanutDanut Gabriel Matei mateidanut Data 26 martie 2014 10:15:49
Problema Lista lui Andrei Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <fstream>
#define NMAX 1003
using namespace std;

const int mod=104659;
short c[26][26];
char x, y;
int a[NMAX][26], i, m, n, j, k, s;

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

int main()
{
    f>>n>>m;
    for (k=1; k<=m; ++k) {
        f>>x>>y;
        c[x-'a'][y-'a']=c[y-'a'][x-'a']=1;
    }
    for (i=0; i<26; ++i)
        a[1][i]=1;
    for (k=2; k<=n; ++k)
        for (i=0; i<26; ++i)
            for (j=0; j<26; ++j)
                if (c[i][j]==0) {
                    a[k][i]+=a[k-1][j];
                    a[k][i]%=mod;
                }
    for (i=0; i<26; ++i) {
        s+=a[n][i];
        s%=mod;
    }
    g<<s;
    return 0;
}