Cod sursa(job #2056959)

Utilizator mariaBmaria blaj mariaB Data 4 noiembrie 2017 13:57:16
Problema Lista lui Andrei Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.77 kb
#include <iostream>
#include <fstream>
#include <vector>
#define MOD 104659
using namespace std;
vector <int> v[26];
bool viz[30][30];
int main()
{
    ifstream cin("nrcuv.in");
    ofstream cout("nrcuv.out");
    int n,i,m,j,q;
    char a,b;
    cin>>n>>m;
    for(i=1;i<=m;i++){
        cin>>a>>b;
        viz[a-'a'][b-'a']=1;
        viz[b-'a'][a-'a']=1;
    }
    for(i=0;i<26;i++){
        v[i].push_back(1);
    }
    for(i=1;i<n;i++){
        for(j=0;j<26;j++){
            int s=0;
            for(q=0;q<26;q++){
                s=(s+v[q][i-1]*(1-viz[j][q])%MOD)%MOD;
            }
            v[j].push_back(s);
        }
    }
    int s=0;
    n=n-1;
    for(j=0;j<26;j++){
        s=(s+v[j][n])%MOD;
    }
    cout<<s;
    return 0;
}