Cod sursa(job #2554071)

Utilizator mirceaisherebina mircea mirceaishere Data 22 februarie 2020 15:56:02
Problema Lista lui Andrei Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.73 kb
#include <fstream>
using namespace std;
ifstream fin("nrcuv.in");
ofstream fout("nrcuv.out");

int n, m, i, j, k, a[30][30], d[1010][30], sol;
char x, y;
/// modulo 104659

int main(){
    fin>>n>>m;
    for(i=1; i<=m; i++){
        fin>>x>>y;
        a[x-'a'][y-'a']=1;
        a[y-'a'][x-'a']=1;
    }
    for(i=0; i<='z'-'a'; i++){
        d[0][i]=1;
    }
    for(k=1; k<n; k++){
        for(i=0; i<='z'-'a'; i++){
            for(j=0; j<='z'-'a'; j++){
                if(a[i][j]==0){
                    d[k][i]+=d[k-1][j];
                    d[k][i]%=104659;
                }
            }
        }
    }
    for(i=0; i<='z'-'a'; i++){
        sol+=d[n-1][i];
        sol%=104659;
    }
    fout<<sol;
}