http://www.perlmonks.org?node_id=927485


in reply to What's the answer to this puzzle? Most unique/golfed solution? (fun)

Hmm. Golf eh? 88 strokes. First 99 19 values. Bleh. 99 takes too long.

Works under linux, Swap double and single quotes for Windows.

         1         2         3         4         5         6         7         8         9
123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
perl -E'$_=1;while(++$t<19){say;my@a;push@a,length$1,$2 while/((\d)\2* +)/g;$_=join"",@a}'

Update 79 75 73 strokes

         1         2         3         4         5         6         7         8
12345678901234567890123456789012345678901234567890123456789012345678901234567890
perl -E'for(0..19){say$_=$t//1;$t="";$t.=(length$1).$2 while/((.)\2*)/ +g}'

Replies are listed 'Best First'.
Re^2: What's the answer to this puzzle? Most unique/golfed solution? (fun)
by liverpole (Monsignor) on Sep 23, 2011 at 14:42 UTC
    thundergnat,

    This just trims a few characters from your approach, which I think is a very good one (I couldn't find an inherently better one).

    # 68 strokes perl -E'map{say$_=$t||1;$t="";$t.=(length$&).$1while/(.)\1*/g}0..19'

    s''(q.S:$/9=(T1';s;(..)(..);$..=substr+crypt($1,$2),2,3;eg;print$..$/