Pagini recente » Cod sursa (job #2893414) | Cod sursa (job #647595) | Clasament preoni2004 | Cod sursa (job #3193742) | Cod sursa (job #1024066)
#include <stdio.h>
FILE *f=fopen("nrcuv.in","r");
FILE *g=fopen("nrcuv.out","w");
int j,n,m,i,nr,x[1002];
char a[25][25],c1,c2;
void bktr(int k)
{
int i;
if(k<=n)
{
for(i=1;i<=26;i++)
{
x[k]=i;
if(a[x[k]][x[k-1]]==0)
bktr(k+1);
if(k==n&&a[x[k]][x[k-1]]==0)
nr++;
}
}
}
int main()
{
fscanf(f,"%d%d\n",&n,&m);
for(i=1;i<=26;i++)
for(j=1;j<=26;j++)
a[i][j]=0;
for(i=1;i<=m;i++)
{
fscanf(f,"%c %c\n",&c1,&c2);
a[c1-'a'+1][c2-'a'+1]=1;
a[c2-'a'+1][c1-'a'+1]=1;
}
x[0]=0;
bktr(1);
fprintf(g,"%d",nr);
return 0;
}