Cod sursa(job #2520693)

Utilizator eusebiu_alexandruMorar Eusebiu eusebiu_alexandru Data 9 ianuarie 2020 17:26:26
Problema Lista lui Andrei Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.76 kb
#include <fstream>

using namespace std;
ifstream fin ("nrcuv.in");
ofstream fout ("nrcuv.out");
int n, m, a[30][30], dp[1010][30], sol;
int main()
{
    char x, y;
    fin>>n>>m;
    for (int i=1;i<= m;i++)
    {
        fin>>x>>y;
        a[x-96][y-96]=1;
        a[y-96][x-96]=1;
    }
    dp[1][0] = 26;
    for (int i=1;i<=26;i++)
        dp[1][i]=1;
    for (int i=2;i<=n;i++)
    {
        for (int j=1;j<=26;j++)
        {
            for (int k=1;k<=26;k++)
                if (!a[j][k])
                {
                    dp[i][j]+=dp[i-1][k];
                    dp[i][j]%=104659;
                }
        }
    }
    for (int i=1;i<=26; i++)
    {
        sol+=dp[n][i],sol%=104659;
    }
    fout << sol;
    return 0;
}