sub check { my ($target, $word) = @_; return 0 if length($target) < length($word); my %target = %{ count($target) }; my %word = %{ count($word) }; for (keys %word) { no warnings 'unintialized'; if ($target{$_} < $word{$_}) { print "'$word' can not be made out of letters of '$target', because it has $word{$_} $_'s\n"; return 0; } } return 1; }