Pagini recente » Cod sursa (job #1848984) | Cod sursa (job #797135) | Cod sursa (job #2441858) | Cod sursa (job #1269174) | Cod sursa (job #981054)
Cod sursa(job #981054)
//12.09
#include <iostream>
#include <fstream>
using namespace std;
int n,k,kk,m,x[1005],sol;
bool a[1005][1005];
int posbun()
{
int i,apar[1005]={0};
apar[x[k]]++;
for (i=1;i<k;i++)
{
apar[x[i]]++;
if (apar[x[i]]==2) return 0;
if (a[x[i]][x[i+1]]==1)
return 0;
}
return 1;
}
int main()
{
int i,xx,y,ok;
fstream f,g;
f.open("dusman.in",ios::in);
g.open("dusman.out",ios::out);
f>>n>>kk>>m;
for (i=1;i<=m;i++)
{
f>>xx>>y;
a[xx][y]=a[y][xx]=1;
}
k=1;
while (k>0)
{
ok=0;
while (x[k]<n && ok==0)
{
x[k]++;
ok=posbun();
}
if (ok==1)
if (k==n)
{
sol++;
if (sol==kk)
{
for (i=1;i<=n;i++)
g<<x[i]<<" ";
return 0;
}
}
else
{
k++;
x[k]=0;
}
else
k--;
}
}