Sei sulla pagina 1di 3

#include <iostream>

#include <stdlib.h>

using namespace std;

int n,st[100],k,as,ev,i,j;

void succesor()

if(st[k]<n)

st[k]++;

as=1;

else

as=0;

void valid()

int i;

ev=1;

for(i=1;i<k;i++)

if(st[i]==st[k]||abs(st[i]-st[k])==abs(i-k))

ev=0;

void back()

k=1;

st[k]=0;

while(k>0)
{

do

succesor();

if(as)

valid();

}while(as&&!ev);

if(as)

if(k==n)

for(i=1;i<=n;i++)

for(j=1;j<=n;j++)

if(st[i]==j)

cout<<"* ";

else

cout<<"- ";

cout<<"\n";

exit(0);

else

k++;

st[k]=0;

else k--;

}
int main()

cin>>n;

back();

return 0;

Potrebbero piacerti anche