| ||
| 2001-04-04 | © 2001-2003 Harry M. Hardjono ramstrong@earthlink.net | |
|
Home Page |
#!/usr/bin/perl
# 8 Queen problem
# Harry M. Hardjono - 2000 Oct 16
&P(0..7);
sub P {
grep {
$r = shift(@_);
$c = $r + scalar @p;
unless (grep $_==$c--, @p) {
$c = $r - scalar @p;
unless (grep $_==$c++, @p) {
push (@p,$r);
if (@_) { P(@_); }
else { PrettyPrint(@p) }
$r = pop(@p);
}
}
push (@_, $r);
} @_;
}
sub PrettyPrint {
#Added 2001 Apr 4
#or just print "@p\n";
grep { print '+'x$_,'O','+'x(7-$_),"\n";
} @_;
print "\n";
}
|