Pagini recente » Cod sursa (job #1039334) | Cod sursa (job #285377) | Cod sursa (job #441809) | Cod sursa (job #989887) | Cod sursa (job #2667082)
#include <stdio.h>
#define MODUL 104659
int v[27][27],dp[1001][27];
int main()
{ FILE *fin,*fout;
char x, y;
int m,n,i,j,k,suma=0;
fin=fopen("nrcuv.in","r");
fout=fopen("nrcuv.out","w");
fscanf(fin,"%d%d ",&n,&m);
for( i=1; i<=m; i++) {
fscanf(fin,"%c %c\n",&x,&y);
v[x-'a'+1][y-'a'+1]=1;
v[y-'a'+1][x-'a'+1]=1;
}
for(i=1;i<=26;i++)
dp[1][i]=1;
for(i=2; i<=n; i++) {
for(j=1; j<=26; j++)
for(k=1; k<=26; k++)
if( !v[j][k]) {
dp[i][j]+= dp[i-1][k];
dp[i][j]= dp[i][j]%MODUL;
}
}
for(i=1; i<=26; i++) {
suma+=dp[n][i];
suma%=MODUL;
}
fprintf(fout,"%d",suma);
fclose(fin);
fclose(fout);
return 0;
}