Pagini recente » Cod sursa (job #2217111) | Cod sursa (job #2423007) | Cod sursa (job #2560701) | Cod sursa (job #1421788) | Cod sursa (job #2189211)
#include <fstream>
#include <algorithm>
#define mp make_pair
using namespace std;
ifstream fin("nrcuv.in");
ofstream fout("nrcuv.out");
int cuvinte['z'+1]['z'+1];
int d[1050]['z'+10];
int main(){
int n,m,i;
fin>>n>>m;
char a,b;
for(i = 1; i <= m; i++){
fin>>a>>b;
cuvinte[a][b] = 1;
cuvinte[b][a] = 1;
}
for(i = 'a'; i <= 'z'; i++){
d[1][i] = 1;
}
int j,k;
for(i = 2; i <= n; i++){
for(j = 'a'; j <= 'z'; j++){
for(k = 'a'; k <= 'z'; k++){
if(cuvinte[j][k] != 1){
d[i][j] += d[i-1][k];
d[i][j] %= 104659;
}
}
}
}
long long int sum = 0;
for(i = 'a'; i <= 'z'; i++){
sum += d[n][i];
sum %= 104659;
}
fout<<sum;
}