Cod sursa(job #3151227)

Utilizator Darius09Cristinescu Darius Petre Darius09 Data 20 septembrie 2023 11:23:22
Problema Dusman Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <fstream>

using namespace std;

ifstream f("dusman.in");
ofstream g("dusman.out");

int a[1001][1001], st[1001],n,h,m,fr[1001],ct;

void afis(int k)
{
    int i;
    for(i=1;i<=k;i++)
    {
     g<<st[i]<<" ";
    }
    exit(0);
}

void backt(int k)
{
    int i;
  for(i=1;i<=n;i++)
  {
   st[k]=i;
   fr[i]++;
   if(fr[i]==1)
   {
    if(a[i][st[k-1]]==0)
    {
     if(k==n){ct++; if(ct==h){afis(k);}}
     else{backt(k+1);}
    }
   }
   fr[i]--;
  }
}

int main()
{
    int i,x,y;
    f>>n>>h>>m;
    for(i=1;i<=m;i++)
    {
     f>>x>>y;
     a[x][y]=1;
     a[y][x]=1;
    }
    backt(1);
    return 0;
}