Cod sursa(job #1390275)

Utilizator badea_adi1999Badea Adrian Catalin badea_adi1999 Data 16 martie 2015 22:32:34
Problema Dusman Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.85 kb
#include <fstream>
#define nmax 1005
using namespace std;
ifstream f("dusman.in");
ofstream g("dusman.out");
int n,k,m;
int v[nmax],p[nmax][nmax],uz[nmax];


void bkt(int t)
{
    int i,x;
    if (t<=n) {
        x=v[t-1];
        for (i=1;i<=n&&k>0;i++)
            if (uz[i]==0&&p[x][i]==0) {
                uz[i]=1;
                v[t]=i;
                bkt(t+1);
                v[t]=0;
                uz[i]=0;
            }
    }
    else {
        k--;
        if (k==0)
            for (i=1;i<=n;i++)
                g<<v[i]<<' ';
    }
}


int main()
{
    int i,j,x,y;
    f>>n>>k>>m;
    for (i=1;i<=m;i++) {
        f>>x>>y;
        p[x][y]=1;
        p[y][x]=1;
    }
    for (i=1;i<=n&&k>0;i++) {
        v[1]=i;
        uz[i]=1;
        bkt(2);
        uz[i]=0;
        v[1]=0;
    }
    return 0;
}