Pagini recente » Cod sursa (job #1948745) | Cod sursa (job #2449744) | Cod sursa (job #1811972) | Cod sursa (job #1594364) | Cod sursa (job #1184090)
#include <cstdio>
using namespace std;
FILE *f=fopen ("nrcuv.in","r");
FILE *g=fopen ("nrcuv.out","w");
int D[1005][760];
bool ap[30][30];
int main(){
int n,m,s=0;
char x,y;
fscanf (f,"%d%d%*c",&n,&m);
for (int i=1;i<=m;++i){
fscanf (f,"%c%*c%c%*c",&x,&y);
ap[x-'a'+1][y-'a'+1]=1;
ap[y-'a'+1][x-'a'+1]=1;
}
for (int i=1;i<=26;++i) D[1][i]=1;
for (int i=2;i<=n;++i){
for (int j=1;j<=26;++j){
for (int k=1;k<=26;++k){
if (!ap[j][k]){
D[i][j]=(D[i][j]+D[i-1][k])%104659;
}
}
}
}
for (int i=1;i<=26;++i){
s=(s+D[n][i])%104659;
}
fprintf (g,"%d",s);
return 0;
}