Pagini recente » Cod sursa (job #1547602) | Cod sursa (job #574108) | Cod sursa (job #1616387) | Cod sursa (job #1378673) | Cod sursa (job #115555)
Cod sursa(job #115555)
#include <stdio.h>
int main()
{
int aa,bb,gas,p,q,i,j,k,n,m,nr;
int a[1001];
int b[10001][2];
freopen("dusman.in","r",stdin);
freopen("dusman.out","w",stdout);
scanf("%d%d%d",&n,&k,&m);
for (i=1; i<=n; i++)
scanf("%d%d",&b[i][0],&b[i][1]);
for (i=1; i<=n; i++)
a[i]=i;
nr=0;a[0]=-1;i=n;j=n+1;
while (nr<k)
{
if (i==j-1 && i!=1)
{
i--;
j=n;
}
else j--;
for (aa=j; aa>=i-1; aa--)
for (bb=aa-1; bb>=i; bb--)
if (aa>i+1)
{
if (nr==k) break;
gas=0;
for (p=1; p<=m; p++)
{
for (q=1; q<=n; q++)
if (a[q]==b[p][0])
if (a[q-1]==b[p][1] || a[q+1]==b[p][1])
{
gas=1;
break;
}
if (gas) break;
}
if (!gas)
nr++;
if (nr==k)
{
for (p=1; p<=n; p++)
printf("%d ",a[p]);
}
p=a[aa];
a[aa]=a[bb];
a[bb]=p;
}
}
return 0;
}