Pagini recente » Cod sursa (job #1202530) | Cod sursa (job #2842796) | Clasament 13431 | Cod sursa (job #1992675) | Cod sursa (job #1680072)
#include <cstdio>
#include <ctype.h>
#define MOD 104659
using namespace std;
FILE *fi;
bool l[26][26];
int d[1000][26];
char fgetch(){
char ch;
do{
ch=fgetc(fi);
}while(isalpha(ch)==0);
return ch;
}
int main()
{
int n, m, i, j, y, sum;
char c1, c2;
fi=fopen("nrcuv.in", "r");
FILE *fo=fopen("nrcuv.out", "w");
fscanf(fi, "%d%d", &n, &m);
for(i=0;i<m;i++){
c1=fgetch();
fgetc(fi);
c2=fgetch();
l[c1-'a'][c2-'a']=l[c2-'a'][c1-'a']=true;
}
for(i=0;i<26;i++)
d[0][i]=1;
for(i=1;i<n;i++){
for(j=0;j<26;j++){
sum=0;
for(y=0;y<26;y++)
if(l[j][y]==false)
sum+=d[i-1][y];
d[i][j]=sum;
}
}
sum=0;
for(i=0;i<26;i++)
sum+=d[n-1][i];
fprintf(fo, "%d", sum);
fclose(fi);
fclose(fo);
return 0;
}