Cod sursa(job #3121603)

Utilizator DavidAA007Apostol David DavidAA007 Data 14 aprilie 2023 12:50:10
Problema Lista lui Andrei Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.93 kb
#include<iostream>
#include<vector>
#include<string.h>
#include<fstream>
#include<algorithm>
#define mod 104659
using namespace std;
ifstream fin("nrcuv.in");
ofstream fout("nrcuv.out");
int n,m,i,j,l,c,contor,dp[1005][30],viz[30][30];
char a,b;
int main()
{
    fin>>n>>m;
    fin.get();
    for(i=1;i<=m;i++)
    {
        fin>>a;
        fin.get();
        fin>>b;
        a=a-'a'+1;
        b=b-'a'+1;
        viz[(int)a][(int)b]=1;
        viz[(int)b][(int)a]=1;
    }
    for(i=1;i<=26;i++)
    {
        dp[1][i]=1;
    }
    for(i=2;i<=n;i++)
    {
        for(j=1;j<=26;j++)
        {
            for(l=1;l<=26;l++)
            {
                if(!viz[j][l])
                {
                    dp[i][j]=(dp[i][j]+dp[i-1][l])%mod;
                }
            }
        }
    }
    for(i=1;i<=26;i++)
    {
        contor=(contor+dp[n][i])%mod;
    }
    fout<<contor;
    return 0;
}
/*

 2 7
 a a
 a b
 b c
 c d
 c f
 b a
 c f
 
*/