Pagini recente » Cod sursa (job #2159133) | Cod sursa (job #2398291) | Cod sursa (job #316591) | Cod sursa (job #2263316) | Cod sursa (job #2676215)
#include <iostream>
#include <fstream>
#include <cstring>
using namespace std;
ifstream in("nrcuv.in");
ofstream out("nrcuv.out");
int mat[1001][26];
bool a[26][26];
int main()
{
int n,m,s=0;
char ch1,ch2;
in>>n>>m;
for(int i=0;i<m;i++){
in>>ch1>>ch2;
a[ch1-'a'][ch2-'a']=true;
a[ch2-'a'][ch1-'a']=true;
}
for(int j=0;j<26;j++)
mat[1][j]=1;
for(int i=2;i<=n;i++)
for(int j=0;j<26;j++)
for(int k=0;k<26;k++)
if(!a[k][j]){
mat[i][j]+=mat[i-1][k];
mat[i][j]%=104659;
}
for(int j=0;j<26;j++){
s+=mat[n][j];
s%=104659;
}
out<<s;
return 0;
}