#!perl -l use strict; use warnings; $|++; #162 chars, including sub decl. sub A{my($d,$s,$l,$y,$c,$t,$z)=@_;$c||=\$z;if(!$d){ $t+=$_ for(sort{$a<=>$b}@$y)[$l..$#$y];$$c++}else{$t+=A ($d-1,$s,$l,[@{$y||[]},$_],$c)for 1..$s}$y?$t:$t/$z}