I thought I'd have some fun with this, so I tried it. I had to use the:
http://www.powerball.com/powerball/winnums-text.txt
source. I had to do a little alteration in the loop to read the data from site (needed \s+ for the split) and remove the possibility of power balls greater than 39 (can't pick them now). This solution is elegant I think but you all can comment:
foreach $line(@numbers) {
next if ($line =~ /^!/);
@data = split(/\s+/, $line);
shift @data; # discard date
@data = reverse(@data);
shift @data if ( @data > 6); # discard power play number if there.
$pb = shift @data;
$powerb{$pb}++ if($pb<40);
foreach (@data) {
$normals{$_}++;
}
}