Cod sursa(job #1483306)
Utilizator | Data | 9 septembrie 2015 06:04:40 | |
---|---|---|---|
Problema | Dusman | Scor | 100 |
Compilator | c | Status | done |
Runda | Arhiva de probleme | Marime | 0.53 kb |
#include<stdio.h>
int n,m,k,i,j,s[1001],a[1001][1001],x[1001];
void D(int l) {
if(k<0)
return;
if(l>n) {
k--;
if(!k)
for(int i=1;i<=n;i++)
printf("%d ",s[i]);
return;
}
for(int i=1;i<=n;++i)
if(!x[i]&&!a[s[l-1]][i])
s[l]=i,x[i]=1,D(l+1),x[i]=0;
}
int main() {
freopen("dusman.in","r",stdin),freopen("dusman.out","w",stdout),scanf("%d%d%d",&n,&k,&m);
while(m--)
scanf("%d%d",&i,&j),a[i][j]=a[j][i]=1;
D(1);
}