Cod sursa(job #3352100)

Utilizator CosminPirlogCosmin CosminPirlog Data 23 aprilie 2026 18:38:25
Problema Lista lui Andrei Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.9 kb

#include <bits/stdc++.h>
using namespace std;
ifstream in("nrcuv.in");
ofstream out("nrcuv.out");
int main()
{
    int n,m;
    in>>n>>m;
    bool val[26][26]={false};
    char t,v;
    int f,s;
    int of='a';
    int MOD=104659;
    for(int i=0;i<m;i++){
        in>>t>>v;
        f=t;
        f-=of;
        s=v;
        s-=of;
        val[s][f]=true;
        val[f][s]=true;
    }
    int dp[n+1][26];
    for(int j = 0; j < 26; j++) {
        dp[1][j] = 1;
    }
    for(int i=2;i<=n;i++){
        for(int j=0;j<26;j++){
            dp[i][j] = 0;
            for(int k=0;k<26;k++){
                if(val[k][j] == false) {
                    dp[i][j] += dp[i - 1][k];
                    dp[i][j] %= MOD;
            }
            }
        }
    }
    int sum=0;

    for(int i=0;i<26;i++){
        sum+=dp[n][i];
        sum%=MOD;
    }out<<sum<<"\n";
    return 0;
}