sub hp_only_1_0_in_base_x { ($num,$base) = @_; $exp = int(log($num)/log($base)); while ($exp) { $try = $base ** $exp--; next if ($try > $num); $num -= $try; return 0 if ($try <= $num); } return ($num > 1) ? 0 : 1 }