Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
#include <stdlib.h>
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;