Perl Monk, Perl Meditation PerlMonks

### YAPGame

by Jasper (Chaplain)
 on Feb 15, 2002 at 17:26 UTC Need Help??

```sub g{\$n=\$_[0]+8*\$_[1];\$_[2]?\$p[\$n]=\$_[2]:\$p[\$n]}sub d{print"\nXY?
";(\$x,\$y)=split'',<>;&k||&d;l(@{&o})}sub o{@g=@q;my@e=([\$x,\$y]);N:for\$
+i
(@g){my@t;map{\$u=\$x+(\${\$i}[0]*\$_);\$v=\$y+(\${\$i}[1]*\$_);next N if!(p(\$u,
+\$v
)&&(\$r=g(\$u,\$v)));\$r eq\$n[\$w]?(@e=(@e,@t),next N):push@t,[\$u,\$v]}1..7}
\@e}sub p{1<grep\$_<8&&\$_>-1,@_}sub l{g(@\$_,\$n[\$w])for@_}sub f{my@j;for
(@c){(\$x,\$y)=n(\$_);next if!&k;push@j,&o}@j=sort{@\$b<=>@\$a}@j;l(@{\$j[0]
+}
)}sub n{(\$_[0]%8,\$_[0]>>3)}@z=(1,-1,0);for\$e(@z){push@q,[\$e,\$_]for@z}
pop@q;@c=0..63;@p[27,28,35,36]=(@n=qw(@ O O @));while(grep!\$p[\$_],@c){
print+join'',(map{(\$x,\$y)=n(\$_);(g(n(\$_))||'+').(\$x>6?"\$y\n":'')}@c),
0..7,"\n";(\$w=!\$w)?&d:&f}print+(grep\$p[\$_]eq'@',@c)>32?"U":"I"," win
";sub k{!g(\$x,\$y)&&(grep{p(@d=(\$x+\${\$_}[0],\$y+\${\$_}[1]))&&g(@d)}@q)}
Further to my previous post. Again, not really obfu, more condensation, but I think it packed quite small.

Replies are listed 'Best First'.
Re: YAPGame
by Anonymous Monk on Feb 16, 2002 at 06:40 UTC
Is "U":"I" backwards?
possibly. Err.. Probably. Teach me to test. Also, I'm not entirely sure I understand the rules of Othello/Reverso, so let's say it's neither of those games, and has odd rules I just made up.

Create A New User
Node Status?
node history
Node Type: obfuscated [id://145730]
Approved by root
help
Chatterbox?
 [sierpinski]: The Total Eclipse of the Heart... err I mean Sun? [thezip]: Yup. Totality passes over my house in Salem.

How do I use this? | Other CB clients
Other Users?
Others cooling their heels in the Monastery: (3)
As of 2017-08-16 16:26 GMT
Sections?
Information?
Find Nodes?
Leftovers?
Voting Booth?
Who is your favorite scientist and why?

Results (269 votes). Check out past polls.

Notices?