Cod sursa(job #1342407)

Utilizator GinguIonutGinguIonut GinguIonut Data 13 februarie 2015 23:16:58
Problema Dusman Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.9 kb
#include <fstream>
#include <string.h>
using namespace std;
ifstream fin("dusman.in");
ofstream fout("dusman.out");
bool mat[1001][1001],viz[1001];
int nr,q,m,n,x[1001],i,a,b,ok;
void back(int k)
{
if(ok==0)
    if(k>n)
    {
        nr++;
        if(nr==q)
            {
                for(int k1=1;k1<=n;k1++)
                    fout<<x[k1]<<" ";
                ok=1;
                return;
            }
    }
    else
    {

        for(int i=1;i<=n;i++)
        {
            if(viz[i]==0&&mat[x[k-1]][i]==0)
            {
                x[k]=i;
                viz[i]=1;
                back(k+1);
                viz[i]=0;
                if(ok==1)
                    return;
            }
        }
    }
}
int main()
{
    fin>>n>>q>>m;
    for(i=1;i<=m;i++)
    {
        fin>>a>>b;
        mat[a][b]=1;
        mat[b][a]=1;
    }
    back(1);
    return 0;
}