Cod sursa(job #1117073)
| Utilizator | Data | 23 februarie 2014 00:18:21 | |
|---|---|---|---|
| Problema | Dusman | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.73 kb |
#include <fstream>
using namespace std;
ifstream fin ("dusman.in");
ofstream fout ("dusman.out");
int v[1005], m[1005][1005], f[1005], rez,k,M,ok,n,i,x,y;
void back(int i) {
if (i==n+1) {
rez++;
if (rez==k) {
for (int j=1;j<=n;j++)
fout<<v[j]<<" ";
ok=0;
}
return ;
}
for (int j=1;j<=n&&ok==1;j++) {
if (f[j]==0 && m[v[i-1]][j]==0) {
v[i]=j;
f[j]=1;
back(i+1);
f[j]=0;
}
}
}
int main () {
fin>>n>>k>>M;
for (i=1;i<=M;i++) {
fin>>x>>y;
m[x][y]=1;
m[y][x]=1;
}
ok=1;
back(1);
return 0;
}
