Cod sursa(job #1298265)

Utilizator raulmuresanRaul Muresan raulmuresan Data 22 decembrie 2014 18:08:56
Problema Lista lui Andrei Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.82 kb
//d[i][j]-nr de cuvinte de lungime i care se temina in a j litera a alfabetului
#include <fstream>

using namespace std;
int viz[30][30],i,j,n,m,x,y,sol,d[2005][30],k;
char c1,c2;

ifstream fin("nrcuv.in");
ofstream fout("nrcuv.out");
int main()
{
    fin>>n>>m;

    for(i=1;i<=m;i++)
    {
        fin>>c1>>c2;
        viz[c1-'a'+1][c2-'a'+1]=1;
        viz[c2-'a'+1][c1-'a'+1]=1;

    }
    for(i=1;i<=26;i++) d[1][i]=1;

    for(i=1;i<n;i++)
    {
        for(j=1;j<=26;j++)
        {
            for(k=1;k<=26;k++)
            {
                if(viz[j][k]==0)
                {
                    d[i+1][j]=(d[i+1][j]+d[i][k])%104659;
                }
            }
        }
    }
    int sol=0;
    for(i=1;i<=26;i++)
    {
        sol=(sol+d[n][i])%104659;
    }

    fout<<sol<<"\n";
}