Cod sursa(job #1024813)

Utilizator Fulga.AlinFulga Alin Fulga.Alin Data 9 noiembrie 2013 09:28:23
Problema Lista lui Andrei Scor 50
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.75 kb
#include <fstream>
using namespace std;
ifstream in("nrcuv.in");
ofstream out("nrcuv.out");
#define R 104659
long long n,m,mat[27][1005],i,j,k;
bool T[27][27];
char l1,l2;
int main()
{
    in>>n>>m;
    for(i=1;i<=m;i++)
    {
        in>>l1>>l2;
        T[l1-'a'+1][l2-'a'+1]=T[l2-'a'+1][l1-'a'+1]=1;
    }
    for(i=1;i<=26;i++)
       mat[1][i]=1;
    for(i=2;i<=n;i++)
    {
        for(j=1;j<=26;j++)
        {
            for(k=1;k<=26;k++)
            {
                if(T[j][k]==0)
                {
                    mat[i][j]+=mat[i-1][k];
                    mat[i][j]%=R;
                }
            }
        }
    }
    k=0;
    for(i=1;i<=26;i++)
      k+=mat[n][i];
    k%=R;
    out<<k;
    return 0;
}