Pagini recente » Cod sursa (job #916264) | Cod sursa (job #2915476) | Cod sursa (job #2283801) | Cod sursa (job #747143) | Cod sursa (job #572673)
Cod sursa(job #572673)
#include<fstream>
using namespace std;
ifstream f("f.in");
ofstream g("f.out");
int n,i,j,k,s,pmin,a[100],b[100],x[100];
int succesor (int k)
{if (x[k]<n&&k<=n)
{x[k]++;
return 1;
}
return 0;
}
int valid (int k)
{int i;
for (i=1;i<k;i++)
if (x[k]==x[i])
if ((a[i]<a[k]&&a[k]<b[i])||(a[i]<b[k]&&b[k]<b[i]))
return 0;
return 1;
}
void back()
{int i,k;
k=1;
x[k]=0;
while (k>0)
{i=0;
while (i==0&&succesor(k))
if (valid(k))
i=1;
if (i==0)
k--;
else
if (k==n)
{for (i=1;i<=n;i++)
g<<x[i]<<" ";
g<<'\n';
}
else
{k++;
x[k]=0;
}
}
}
int main()
{f>>n;
for (i=i;i<=n;i++)
{f>>a[i]>>b[i];
b[i]=b[i]+a[i];
}
back();
f.close();
g.close();
}