Pagini recente » Cod sursa (job #2710115) | Cod sursa (job #249880) | Cod sursa (job #1596344) | Cod sursa (job #346337) | Cod sursa (job #149508)
Cod sursa(job #149508)
#include<stdio.h>
int v[1001],nr,n,p,m,i,j,a[5][1001],k;
int cont (int x){
for(i=1;i<=a[0][ v[x] ];i++){
if( v[k-1]==a[i][ v[x] ] )return 0;
}
for(i=1;i<x;i++){
if(v[i]==v[x])return 0;
}
return 1;
}
int main(){
FILE *f=fopen("dusman.in","r");
fscanf(f,"%d %d %d",&n,&p,&m);
for(i=1;i<=m;i++){
fscanf(f,"%d %d",&i,&j);
a[0][i]++;
a[a[0][i]][i]=j;
a[0][j]++;
a[a[0][j]][j]=i;
}
fclose(f);
k=1;
while(k>0){
if(v[k]<n){
v[k]++;
if(cont(k)){
if(k==n){
nr++;
if(nr==p)break;
}
else{
k++;
v[k]=0;
}
}
}
else{
k--;
}
}
FILE *g=fopen("dusman.out","w");
for(i=1;i<=n;i++){
fprintf(f,"%d ",v[i]);
}
fclose(g);
return 0;
}