Cod sursa(job #2105966)

Utilizator lucia.cstCostache Lucia lucia.cst Data 14 ianuarie 2018 18:08:39
Problema Lista lui Andrei Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.8 kb
#include<fstream>
#include<cstring>

using namespace std;

ifstream cin("nrcuv.in");
ofstream cout("nrcuv.out");

const int MAX1=2001, MAX2=104659;
int a[27][27];
int ma[MAX1][27], n, m, i, j, k, s;
char x, y;

int main(){
    cin>>n>>m;
    for(i=1; i<=m; i++){
        cin>>x>>y;
        a[x-'a'+1][y-'a'+1]=1;
        a[y-'a'+1][x-'a'+1]=1;
    }
    for(i=1; i<=n; i++){
        for(j=1; j<=26; j++){
            if(i==1)
                ma[i][j]=1;
            else{
                for(k=1; k<=26; k++)
                    if(!a[k][j]){
                        ma[i][j]+=ma[i-1][k];
                        ma[i][j]%=MAX2;
                    }
            }
        }
    }
    for (i=1; i<=26; i++){
        s+=ma[n][i];
        s%=MAX2;
    }
    cout<<s;
    return 0;
}