Это интересная головоломка, и у меня нет реального ответа, но я немного задумываюсь ...
это может зависеть от того, из чего состоит каждый элемент в стеке.Если это три стека флагов истина / ложь, то вы можете использовать первые три бита целочисленных элементов.То есть.бит 0 - это значение первого стека, бит 1 - значение второго стека, бит 2 - значение третьего стека.Тогда каждый стек может расти независимо, пока весь массив не будет заполнен для этого стека.Это даже лучше, так как другие стеки также могут продолжать расти, даже когда первый стек заполнен.
Я знаю, что это немного обманывает и на самом деле не отвечает на вопрос, но он работает для очень конкретногорегистр и никакие записи в стеке не теряются.Я с интересом наблюдаю, может ли кто-нибудь придумать правильный ответ, который подходит для более общих элементов.