Możesz też to rozwiązać całkowicie matematycznie. Jeśli się nad tym zastanowisz to pytają dosłownie o logarytm z companyValue/debt o podstawie rate, gdzie rate dla rośniecia o 20% wynosi 1.2, czyli 1 + rate/100.
Trzeba jedynie pamiętać, że funkcja Math.log(x) liczy logarytm o podstawie stałej eulera e, co można z właściwości logarytmu przekształcić do dowolnej podstawy z takiego wzoru:
logb(n) = loge(n) / loge(b)
Dostaniesz w ten sposób dokładną wartość double, lat po których wartość firmy będzie równa długowi, pytają o lata w liczbie całkowitej więc trzeba zaokrąglić wszystko w góre - funkcja Math.ceil().
Na koniec musisz zrzutować do int, bo Math.ceil zwraca double.
Czyli ostatecznie:
return (int) Math.ceil(Math.log(companyValue/debt) / Math.log(rate/100 + 1));
Ale jeśli masz napisać algorytm to zrób tak jak sugeruje mbabane ;P