Дан набор шестеренок, для каждой известно количество зубьев. Их можно скреплять так, чтобы они вращались совместно на одной оси. Известно, что первая шестеренка крутится по часовой стрелке и делает P оборотов в минуту (на ее ось ничего насаживать нельзя). Требуется подобрать промежуточные шестеренки при необходимости насаживая их на общие оси и вводя в зацепление так, чтобы последняя шестеренка крутилась также по часовой стрелке и делала Q оборотов. (Не обязательно использовать все шестеренки).
Исследовать асимптотическую временную сложность решения задачи в зависимости от количества шестеренок.
Исходные данные:
количество шестеренок
обороты первой шестеренки
обороты последней шестеренки
количество зубьев у 1-ой шестеренки
количество зубьев у 2-ой шестеренки
........................
количество зубьев у n-ой шестеренки (она должна быть последней).