Cod sursa(job #1083239)

Utilizator AndyCatrunaCatruna Andy AndyCatruna Data 15 ianuarie 2014 19:30:23
Problema Lista lui Andrei Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.85 kb
#include <fstream>
#define MOD 104659
using namespace std;
ifstream fin("nrcuv.in");
ofstream fout("nrcuv.out");

int a[26][1001],z[26][26];

char x, y;
int n,m,i,j,k,s;
int main(){
    fin>>n>>m;
    for(i=1;i<=m;i++){
        fin>>x>>y;
        z[y-97][x-97]=1;
        z[x-97][y-97]=1;

      //  fout<<   (char) (x+1)    <<"   "<<y+1<<"\n";
    }
    for(i=0;i<=25;i++){
        a[i][1]=1;
    }
    for(i=2;i<=n;i++){
        for(j=0;j<=25;j++){
            //calculam a[j][i]=cate siruri de lungime i se termina cu j
            for(k=0;k<=25;k++){
                if(z[k][j]==0){
                    a[j][i]=a[j][i]+a[k][i-1];
                    a[j][i]%=MOD;
                }
            }
        }
    }
    for(i=0;i<=25;i++){
        s+=a[i][n];
        s%=MOD;

    }
    fout<<s<<"\n";



    return 0;
}