Pagini recente » Cod sursa (job #3263611) | Cod sursa (job #2381767) | Cod sursa (job #32635) | Cod sursa (job #759124) | Cod sursa (job #495385)
Cod sursa(job #495385)
#include<fstream>
#define sigma 26
#define nmax 1005
#define r 104659
using namespace std;
int c1[sigma+5], c2[sigma+5], a[sigma+5][sigma+5];
int main(){
ifstream f("nrcuv.in");
ofstream g("nrcuv.out");
int n, i, j, m, k;
char x, y;
f >> n >> m;
for (i = 1; i <= m; i++){
f >> x >> y;
a[x-'a'][y-'a'] = 1;
}
for (i = 0; i < sigma; i++)
c1[i] = 1;
int nrcuv = 0;
for (i = 2; i <= n; i++) {
for (j = 0; j < sigma; j++)
for (k = 0; k < sigma; k++) {
if (a[j][k] == 0 && a[k][j] == 0){
c2[k] = (c2[k] + c1[j])%r;
}
}
for (j = 0; j < sigma; j++) {
c1[j] = c2[j];
c2[j] = 0;
}
}
for (i = 0; i < sigma; i++)
nrcuv = (nrcuv + c1[i])%r;
g<<nrcuv<<'\n';
return 0;
}