Cod sursa(job #2145168)

Utilizator ptudortudor P ptudor Data 27 februarie 2018 10:17:31
Problema Lista lui Andrei Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.85 kb
#include <iostream>
#include <fstream>
using namespace std;
const int P=104659;
int n,m;
int A[27];
int B[27];
int l[27][27];
int main()
{
    ifstream in("nrcuv.in");
    ofstream out("nrcuv.out");
    in>>n>>m;
    char x,y;
    int z,i,j;
    for (i=1;i<=m;i++)
    {
        in>>x>>y;
        l[x-97][y-97]=1;
        l[y-97][x-97]=1;
    }
    for (i=0;i<=25;i++)
    {
       A[i]=1;
    }
    for (z=2;z<=n;z++)
    {
        for (j=0;j<=25;j++)
        {
            for (i=0;i<=25;i++)
            {
                if (l[i][j]==0)
                {
                    B[j]=(B[j]+A[i])%P;
                }
            }
        }
        for (i=0;i<=25;i++)
        {
            A[i]=B[i];
            B[i]=0;
        }
    }
    int s=0;
    for (i=0;i<=25;i++)
    {
        s=(s+A[i])%P;
    }
    out<<s;
}