Cod sursa(job #3127196)
Utilizator | DumitrescuA DumitrescuA | Data | 7 mai 2023 13:21:31 |
---|---|---|---|
Problema | Lista lui Andrei | Scor | 45 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.7 kb |
#include <fstream>
using namespace std;
ifstream cin("nrcuv.in");
ofstream cout("nrcuv.out");
int frv[26][26];
int dp[1001][26];
int main()
{
int n,m,i,j,k;
char a,b;
cin>>n>>m;
for(i=0;i<m;i++){
cin>>a>>b;
frv[a-'a'][b-'a']=frv[b-'a'][a-'a']=1;
}
for(i=0;i<26;i++)
dp[0][i]=1;
for(i=1;i<=n;i++){
for(j=0;j<26;j++){
for(k=0;k<26;k++){
if(frv[j][k]==0){
dp[i][j]+=dp[i-1][k];
if(dp[i][j]>=104659) dp[i][j]-=104659;
}
}
}
}
int s=0;
for(i=0;i<26;i++)
s+=dp[n-1][i];
cout<<s;
return 0;
}