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

Inspired by some of the really interesting and sometimes amazing ideas I've seen in other threads, here's my first attempt at doing this kind of thing...
use warnings;use strict;my $c=" 1#3#4#5#6#7#8#9#10#11#18#25#29# 34#35#36#37#126#127#128#130#133 #134#243#250#251#252#253#254### 257#135#136#137#138#139#145#146 #149#150#154#";my @l=split" "," P X U S E S T R I C T G L A F I I E E R Z I A P S Z R E E A W N X A R R A Y E K E D J D L D F J D F S L W M N C J C E R I C E R U H F C M O N L E N G T H I D O M R X H M H Z W I E R X W A S D H E Y L C E S T R V H W D E W Q E G R X W M U A D F E G E L S E C E M J F O R E A C H T R H E C P X U H R D T Y R P Y N B X P B W C B B Z U E N R A W A C V R E D F U V D L S A C N B V Y A I T S S E L B U B H E W S D L N N D A D X G E S F K S J G A R T T F F G I E B N S B Z A C W Q U E A S D T G A E R N N S H P A J Q D ";my @hidden_words_to_find =qq( PERL, USESTRICT, ARRAY, PERLMONKS, LENGTH, WHILE, FOREACH, MODULUS, CPAN, SUBROUTINE, PRINT, SCALAR, REGEX, IF, ELSE, WARN, );$c.="38#40#45#52#54#55#59#235 #72#73#74#75#76#77#82#85#89#93# 98#100#104#114#115#118#119#125# 159#164#166#168#169#170#171#175 #179#182#186#190#191#193#194### 195#196#197#198#200#205#207#211 #214#217#220#223#227#234#61#70# 16#15";$c=~s/##//g;my @k= split "#",$c;@k=sort{$a<=>$b}@k;for(0 ..$#l+1){if($k[0]and$k[0]==$_){ print $l[$_-1];shift@k;} else { print" ";} print" ";print"\n " if$_%16==0;}print"\n";exit;#jeb


Critiques appreciated!