Pagini recente » Cod sursa (job #1306132) | Cod sursa (job #525497) | Borderou de evaluare (job #2012390) | Cod sursa (job #2474669) | Cod sursa (job #413384)
Cod sursa(job #413384)
#include <fstream>
std::ifstream in("dusman.in");
std::ofstream out("dusman.out");
int n,poz,m;
int d1[20],d2[20],sir[50];
void afisare()
{
int i;
for(i=0;i<n;i++)
out<<sir[i]<<" ";
out<<'\n';
}
void back(int k)
{
bool ok;
int i,j;
if(k==n)
if(poz==1)
afisare(),poz--;
else
poz--;
else
for(i=1;i<=n;i++)
{
ok = true;
for(j=0;j<k;j++)
if(sir[j]==i)
ok=false;
for(j=0;j<m;j++)
if(d1[j]==i)
if(d2[j]==sir[k-1])
ok=false;
else;
else if(d2[j]==i)
if(d1[j]==sir[k-1])
ok=false;
if(ok)
sir[k]=i,back(k+1);
}
}
int main ()
{
int i;
in>>n>>poz>>m;
for(i=0;i<m;i++)
in>>d1[i]>>d2[i];
back(0);
return 0;
}