Solitare
                sub D {for ($i=0;$i<49;)
                {print $i%7==0?"\n":"",
                $b[$i++];} print "\n? ";
                } sub I{(3-$_[1])*7+$_[0
]+3;}sub F{for($i=0;$i<49;++$i){return $i if$b[$i] eq 
$_[0];}} sub X{$_[0]%7-3;} sub Y{3-int$_[0]/7;}for($i=0,
$j=96;$i<49;){$b[$i++]=        abs&X($i)>1&&abs&Y($i)>1
?" ":$i==24?".":chr($j=        $j<122?$j+1:49);}D;while
(<>){chomp;$j=F(chop);$f=F($_);next if$j>49||$f>49||$j==
$f;$u=X($j);$v=Y($j);$x=X($f);$y=Y($f);$t=I($u>$x?$u+1:
                $u<$x?$u-1:$x,$v>$y?$v+1
                :$v<$y?$v-1:$y);if($b[$t
                ]eq ".") {$b[$t]=$b[$f];
                $b[$f]=$b[$j]=".";} D;}
Hosted by www.Geocities.ws

1