Cod sursa(job #2087953)

Utilizator ioana.jianuIoana Jianu ioana.jianu Data 14 decembrie 2017 16:28:53
Problema Lista lui Andrei Scor 35
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.7 kb
#include <iostream>
#include <stdio.h>

using namespace std;

int d[1001][26],f[26][26];

int main(){

    freopen("nrcuv.in","r",stdin);
    freopen("nrcuv.out","w",stdout);

    int n,m,i,j,k,x1,x2,sum;
    char inutil1,inutil2,c1,c2;

    scanf("%d%d",&n,&m);
    for(i=1;i<=m;i++){
        scanf("%c%c%c%c",&inutil1,&c1,&inutil2,&c2);
        x1=c1-'a';
        x2=c2-'a';
        f[x1][x2]=f[x2][x1]=1;
    }

    for(i=0;i<26;i++)
        d[1][i]=1;
    for(i=2;i<=n;i++)
        for(j=0;j<26;j++)
            for(k=0;k<26;k++)
                if(f[k][j]==0)
                    d[i][j]+=d[i-1][j]%104659;

    sum=0;
    for(i=0;i<=26;i++)
        sum+=d[n][i]%104659;

    printf("%d",sum);

    return 0;
}