Cod sursa(job #2642869)

Utilizator PredescuSebastianIonPredescu Sebastian Ion PredescuSebastianIon Data 17 august 2020 14:22:13
Problema Dusman Scor 80
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.9 kb
#include <fstream>

using namespace std;
ifstream f("dusman.in");
ofstream g("dusman.out");
int x,y,n,m,k,nr,v[702],marker[702];
bool mat[702][702];
void afisare(int k)
{
    for(int i=1;i<=k;i++)
    {
        g<<v[i]<<" ";
    }
    g<<'\n';
}
void bac(int indice)
{
    if(nr>k)
    {
        return;
    }
    if(indice==n+1)
    {
        nr++;
        if(nr==k)
        {
            afisare(n);
            return;
        }
    }
    for(int i=1; i<=n; i++)
    {
        if(!marker[i])
        {
            if(!mat[i][v[indice-1]])
            {
                v[indice]=i;
                marker[i]=1;
                bac(indice+1);
                marker[i]=0;
            }
        }
    }
}
int main()
{
    f>>n>>k>>m;
    for(int i=1; i<=m; i++)
    {
        f>>x>>y;
        mat[x][y]=true;
        mat[y][x]=true;
    }
    bac(1);
    return 0;
}