问题3020--BSD排队3020: BSD排队
时间限制: 1 Sec 内存限制: 512 MB
提交: 0 解决: 0
[提交] [状态] [讨论版] [命题人:]题目描述
小X和他的N(1 <= N <= 2,000)个伙伴满载而归,为了便于管理,来时小X对参加者采用了一种新的登记方案:根据参加者出现的次序简单登记他们姓名的首字母(也就是说Bessie, Sylvia, 和Dora先后到达,他登记为BSD,小X本人不需要登记)。
现在要撤退了,小X开始根据大家登记的情况来安排撤退顺序。重新排队时,每次只能由以前队列的第一个和最后一个人出列排队。当他排好队后,小X带着大家按新的顺序参加登记。给出开始的登记顺序,求出通过这种方法生成的按字典顺序最小的首字母串。
输入
第一行:一个整数:N
第2..N+1行:第i+1行包含一个在原来的排队顺序中排在第i个位置的人的姓名的首字母
输出
输出重新排队后能生成的按字典顺序最小的首字母串。每行包括80个人的首字母(最后一行可能没有80个字母)
样例输入
6
A
C
D
B
C
B
样例输出
ABCBCD
输出说明:
步数 原来的队列 新的队列
#1 ACDBCB
#2 CDBCB A
#3 CDBC AB
#4 CDB ABC
#5 CD ABCB
#6 D ABCBC
#7 ABCBCD
来源/分类
[提交] [状态]