Pagini recente » Cod sursa (job #1073749) | Cod sursa (job #2655269) | Cod sursa (job #1972889) | Cod sursa (job #1894244) | Cod sursa (job #307911)
Cod sursa(job #307911)
#include<stdio.h>
#include<string.h>
FILE*fin=fopen("nrcuv.in","r");
FILE*fout=fopen("nrcuv.out","w");
#define mod 104659
int g[30][30],a[2][30],n,m;
int main()
{
int nw,old,i,j,k,rez;
char l1,l2,sp;
fscanf(fin,"%d%d\n",&n,&m);
memset(g,0,sizeof(g));
for(i=1;i<=m;i++)
{
fscanf(fin,"%c%c%c\n",&l1,&sp,&l2);
g[l1-'a'][l2-'a']=1;
g[l2-'a'][l1-'a']=1;
}
for(i=0;i<26;i++)
a[1][i]=1;
nw=1;
for(i=2;i<=n;i++)
{
nw=i%2;
old=!nw;
for(j=0;j<26;j++) a[nw][j]=0;
for(j=0;j<26;j++)
for(k=0;k<26;k++)
if(!g[j][k]) a[nw][k]=(a[nw][k]+a[old][j])%mod;
}
rez=0;
for(j=0;j<26;j++)
rez=(rez+a[nw][j])%mod;
fprintf(fout,"%d",rez);
fclose(fin);
fclose(fout);
return 0;
}