Pagini recente » Cod sursa (job #2122962) | Cod sursa (job #298696) | Cod sursa (job #2681974) | Cod sursa (job #2725303) | Cod sursa (job #1099021)
#include <fstream>
using namespace std;
ifstream f("damesah.in");
ofstream g("damesah.out");
int a[100],b[100],nr,ok,v[50],st[50],n;
void bkt(int k)
{
int i,j,ok=0;
if(k==n+1)
{
nr++;
if(nr==1)
{
for(i=1;i<=n;i++)
g<<st[i]<<" ";
g<<'\n';
}
}
else
{
for(i=1;i<=n;i++)
{
if(!v[i]&&!b[i+k]&&a[50+i-k]==1000)
{
st[k]=i;
v[i]++;
b[i+k]++;
a[50+i-k]=1;
bkt(k+1);
b[i+k]--;
a[50+i-k]=1000;
v[i]--;
}
}
}
}
int main()
{
for(n=0;n<=100;n++)
a[n]=1000;
f>>n;
bkt(1);
g<<nr<<'\n';
return 0;
}