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


in reply to Pattern matching

#!perl use warnings; use strict; use integer; for(my@a=( 0,42,0,0,0,0,0,0,-198,0,0,0,1,-1,-10,-14,64,-64,6,6,6,7,5,5,5,6,32,32, +5,17,32, 2,0,188,5,5,5,8,9,9,9,5,49,49,49,8,7,7,7,0,8,12,58,58,7,11,58,2,0,189, +1,190, 10,10,10,15,5,5,5,7,5,7,7,7,7,5,7,5,10,12,5,5,88,88,5,10,88,2,0,197,96 +,96,7, 11,96,2,0,191,5,5,106,106,5,7,106,2,0,192,115,115,115,9,7,7,7,0,4,4,4, +7,3,12, 3,3,9,12,6,6,6,8,5,5,5,9,140,140,5,6,140,2,0,194,149,149,149,8,7,7,7,0 +,6,6,6, 7,5,5,5,17,164,164,5,6,164,2,0,195,4,4,4,14,3,12,3,3,1,193,4,4,4,7,3,1 +2,3,3,8, 12,1,196,-28,42,62,56,66,134,34,-10,46,24, unpack"U*",`cat part3.txt`.v0); $a[1];){$a[2]=-(($a[$a[$a[1]++]]-=$a[$a[$a[1]++]])<0);$a[3]&&print chr +$a[4]}

Update: This would have been better written as

#!perl use warnings; use strict; use integer; for(my@a=( 0,42,0,0,0,0,0,0,-198,0,0,0,1,-1,-10,-14,64,-64,6,6,6,7,5,5,5,6,32,32, +5,17,32, 2,0,188,5,5,5,8,9,9,9,5,49,49,49,8,7,7,7,0,8,12,58,58,7,11,58,2,0,189, +1,190, 10,10,10,15,5,5,5,7,5,7,7,7,7,5,7,5,10,12,5,5,88,88,5,10,88,2,0,197,96 +,96,7, 11,96,2,0,191,5,5,106,106,5,7,106,2,0,192,115,115,115,9,7,7,7,0,4,4,4, +7,3,12, 3,3,9,12,6,6,6,8,5,5,5,9,140,140,5,6,140,2,0,194,149,149,149,8,7,7,7,0 +,6,6,6, 7,5,5,5,17,164,164,5,6,164,2,0,195,4,4,4,14,3,12,3,3,1,193,4,4,4,7,3,1 +2,3,3,8, 12,1,196,-28,42,62,56,66,134,34,-10,46,24, unpack"U*",`cat part3.txt`.v0); $a[1];$a[3]&&print chr$a[4]){$a[2]=-(($a[$a[$a[1]++]]-=$a[$a[$a[1]++]] +)<0)}