30 км/час-18 км/час=12 км/час (скорость, с какой теплоход догоняет катер)
42 км:12 км/час=3,5 час (t=S:V)
Ответ: теплоход догонит катер через 3,5 часа
В данном случае скорость течения можно не учитывать, так как оба, и катер и теплоход, идут по течению реки.