Cod sursa(job #2076195)

Utilizator Anakin1001George Giorgiu Gica Anakin1001 Data 26 noiembrie 2017 12:16:52
Problema Dusman Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.91 kb
#include <fstream>

using namespace std;
ifstream f("dusman.in");
ofstream g("dusman.out");
int x[9],n,viz[9],nr,p,m,x1,y1,a[1001][1001];
void tipar(){
    int i;
    for(i=1;i<=n;i++)
        g<<x[i]<<' ';
    g<<'\n';
}
void backt(int k){
    int i;
    for(i=1;i<=n;i++)
        if(viz[i]==0){

                x[k]=i;
                viz[i]=1;
          if(a[x[k]][x[k-1]]==0){
            if(k==n){
                {nr++;
                if(nr==p){
                    tipar();
                    return;
                }
                }
            }
            else
                backt(k+1);

        }
          viz[i]=0;
            if(nr==p){
                    return;
            }
    }
}
int main()
{   int i;
     f>>n>>p>>m;
     nr=0;
    for(i=1;i<=m;i++){
        f>>x1>>y1;
        a[x1][y1]=1;
        a[y1][x1]=1;
    }
    backt(1);
    return 0;
}