Я считаю, что это тривиальный алгоритмический вопрос, но я, похоже, не смог найти эффективного и элегантного решения.
У нас есть 3 массива типа int (Aa, Ab, Ac) и 3 курсора (Ca, Cb, Cc), которые указывают индекс в соответствующем массиве.Я хочу определить и увеличить курсор, указывающий на наименьшее значение.Если этот курсор уже находится в конце массива, я исключу его и увеличу курсор, указывающий на второе наименьшее значение.Если есть только один курсор, который не находится в конце массива, мы увеличиваем его.
Единственные решения, которые я могу придумать, являются сложными и / или неоптимальными.Например, я всегда получаю огромное, если ... еще ...
Кто-нибудь видит четкое решение этой проблемы?
Я программирую на C ++, но не стесняюсь обсуждатьэто в псевдокоде или на любом другом языке.
Спасибо