Pagini recente » Cod sursa (job #2472380) | Cod sursa (job #1055539) | Cod sursa (job #2419247) | Cod sursa (job #56957) | Cod sursa (job #944640)
Cod sursa(job #944640)
#include <iostream>
#include <fstream>
#define modulum 104659
using namespace std;
fstream in( "nrcuv.in" , ios::in ),
out( "nrcuv.out" , ios::out );
int n , m , d[1000][26] ;
bool mat[26][26];
void verifica(){
int i , j ;
char a , b ;
for(i=0 ; i<m ; i++){
in >>ws>> a>>ws >> b>>ws ;
mat[(int)a-'a'][(int)b-'a'] = true;
mat[(int)b-'a'][(int)a-'a'] = true;
}
}
int sum(int i , int j){
int k , s=0;
for(k=0 ; k<26 ; k++){
if(!mat[k][j])
s=( s + d[i-1][k]) % modulum;
}
return s;
}
int main(){
in >> n >> m >>ws;
verifica();
int i , j ;
for(i=0 ; i<26 ; i++){
d[0][i] = 1;
}
for(i=1 ; i<n ; i++){
for(j=0 ; j<26 ; j++){
d[i][j] = sum(i,j) ;
}
}
int s=0;
for(j=0 ; j<26 ; j++){
s= (s + d[n-1][j]) % modulum;
}
out << s <<'\n';
return 0;
}