Пусть х км/ч - собственная скорость теплохода, тогда (х-2) км/ч - скорость теплохода против течения реки, а (х+2) км/ч - скорость теплохода по течению реки. Тогда прировняем скорости теплохода против течения:
х-2 = 504/21
х-2 = 24
х = 24+2 = 26 (км/ч)
Составим уравние, если теплоход будет плыть по течению, где t - время, за которое теплоход пройдёт расстоение по течению:
26+2 = 504/t
28 = 504/t
t = 504/28 = 18
Ответ: за 18 ч