Cod sursa(job #457956)

Utilizator cont_de_testeCont Teste cont_de_teste Data 22 mai 2010 13:38:41
Problema Dusman Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.83 kb
#include<fstream>
using namespace std;
    ifstream f("dusman.in");
    ofstream g("dusman.out");
    int sol,v[10001],p,n,m,a[10001][10001],i,j,x,y,ok=0,l[10001];

    int afis(){
        int i;
        for(i=1;i<=n;++i) g<<v[i]<<' ';
		ok=1;
        g<<'\n';
    }


    int back(int k){
		if(!ok)
		{
			int i;
            if(k>n){
			    ++sol;
		        if(sol==p) afis();
		    }
            else
                for(i=1;i<=n;++i)
                    if(!l[i]&&!a[v[k-1]][i]){
                    v[k]=i;
                    l[i] = 1;
                    back(k+1);
                    l[i] = 0;
                    }

		}
    }
    int main(){
        f>>n>>p>>m;
        for(i=1;i<=m;++i){
            f>>x>>y;
            a[x][y]=a[y][x] = 1;
        }

        back(1);


        return 0;
    }