#P1494. 2024.8.28-秋招-第1题-老鼠串门

2024.8.28-秋招-第1题-老鼠串门

题目内容

现有一个狭小的老鼠洞,每次仅能一只老鼠进或者出(类似于栈的特性),如果通道里有多只老鼠,那么先进洞的老鼠会比晚进洞的老鼠出来更晚,假如有一窝老鼠来串门,我们给每只老鼠单独编个数字号码,123...1、2、3...

允许老鼠进洞后,又出洞,再次进洞,且若众多老鼠都挤满到洞门口了,则不会再有老鼠进洞,最后出洞的顺序就按洞口到洞底的老鼠编号输出。 假如老鼠进洞的顺序是1231、2、3,那么可能的出洞顺序是3213、2、1, 考虑到洞未满的情况下,老鼠进洞后又出洞了,也可能是1231、2、3等,但不可能是3123、1、2

现给定一个进洞序列,序列里数字可能重复,重复表示出洞后再次进洞,假定序列最后洞是满的,序列长度小于1000010000,即老鼠编号范围是[1,10000][1,10000]

请给出老鼠出洞的顺序?

输入描述

输入一行数字数列,每个数字之间用英文空格分隔。如1 2 3

输出描述

3 2 1

样例1

输入

1 2 3 2 3 4 5

输出

3 2 5 4 3 2 1

解释

123123后又出现22,说明22号老鼠是之前经出洞了,再重新进洞,22号老鼠要出洞,需要33号老鼠先出洞,因而最先出洞的是33号老鼠,接着是22号老鼠。22号重新进洞后,接着33号又进洞,再是44号和55号,55号后面没其它的说明洞口满了。那么出洞顺序就是 3 2 5 4 3 2 1

样例2

输入

1 1 2 3 4 4 5

输出

1 4 5 4 3 2 1

解释

11后面又是11,说明11号老鼠进洞后又出洞了,接着又进洞,接着是2342、3、4号老鼠进洞,接着又44号老鼠进洞,说明44号老鼠也是出洞了再进洞的,55号后面没其它的说明洞口满了。那么出洞顺序就是 1 4 5 4 3 2 1