Подскажите, логика решения сильно хромает?