Beefy Boxes and Bandwidth Generously Provided by pair Networks
more useful options
 
PerlMonks  

Re: split//; (Re^2: Golf: Sudoku solving)

by eyepopslikeamosquito (Canon)
on Jan 11, 2013 at 09:51 UTC ( #1012848=note: print w/ replies, xml ) Need Help??


in reply to split//; (Re^2: Golf: Sudoku solving)
in thread Golf: Sudoku solving

For Perl up to and including 5.10, calling split in scalar or void context had the side-effect of setting @_. This mis-feature was removed in Perl 5.12. That was great news for most Perl programmers because this side-effect "feature" was unnecessary, an ugly wart. It was sad news for golfers though because side-effects are frequently useful in golf. In fact, I recently experienced a similar split annoyance in Compression in Golf: Part III, as described in the "Fun with split" section in that node.

Simply changing @_ to @z say should fix thospel's original solution at the cost of three strokes:

$_=$`.$_.$'.<>;@z=split//;${/[@z[map{$i-($i="@-")%9+$_,9*$_+$i%9,9*$_% +26+$i-$i%27+$i%9-$i%3}0..8]]/o||do$0}for/0/||print..9
I expect you could do better than that, though I haven't tried.


Comment on Re: split//; (Re^2: Golf: Sudoku solving)
Select or Download Code

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1012848]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others having an uproarious good time at the Monastery: (8)
As of 2015-07-07 05:38 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (87 votes), past polls