Cod sursa(job #1036484)

Utilizator alexandru213Bracau Alexandru alexandru213 Data 19 noiembrie 2013 13:43:10
Problema Dusman Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.86 kb
#include <fstream>
using namespace std;
ifstream in("dusman.in");
ofstream out("dusman.out");
int x,y,a[1001][1001],N,K,M,nr,ok,b[1001],viz[1001];
void scrie() {
    for(int i=1;i<=N;i++)
        out<<b[i]<<" ";
    }
void back(int k){
    /* if(ok==1)
        return; */
    for(int i=1;i<=N;i++){
        if(a[i][b[k-1]]==0&&viz[i]==0){
            b[k]=i;
            viz[i]=1;
            if(k==N){
                nr++;
                if(nr==K){
                    scrie();
                    ok=1;
                    return;
                    }}
            else{
                back(k+1);
	if(ok==1)
           	    return;}
        viz[i]=0;}
    }
        /* if(ok==1)
            return; */
}
int main(){
    in>>N>>K>>M;
    for(int i=1;i<=M;i++){
        in>>x>>y;
        a[x][y]=a[y][x]=1;}
    back(1);
    return 0;}