#!/usr/bin/perl -w $target = 62539.294117647056; $sum = 0; $string = ""; while ($sum != $target) { if ($sum < $target) { $string = "z" . $string; } else { last; } $sum = 0; for ($i=0; $i $target) { $todo = $sum - $target; print "need to reduce $todo\n"; $last = ord(substr($string, $i-1, 1)); $diff = $todo / $i; print "len: $i\n"; print "last: $last\n"; print "diff: $diff\n"; if ($last-$diff < 33) { substr($string, $i-1, 1) = "a"; } else { substr($string, $i-1, 1) = chr($last-int($diff+1)); } $sum = 0; for ($w=0; $w