SP11956 TLL237 - Addicted

题目描述

Jhon 是个热衷储蓄的人,他在自己的房间里放了 $n$ 个存钱罐。他记录了一串由 1 和 2 组成的序列,指示他如何将钱存入这些存钱罐中。每次 Jhon 拿到一枚硬币时,他都会选择房间里钱最少的两个存钱罐。然后,他根据序列中的下一个数字进行存钱:如果是 1,他会把硬币存入钱更少的那个存钱罐;如果是 2,则存入较少钱的另一个存钱罐。请帮助 Jhon 编写一个程序,以便在所有操作完成后,能够告诉他钱最少的两个存钱罐各有多少钱。如果存在多个存钱罐的钱数相同且最少,优先选取编号较小的那两个。 你可以假设 $n \le |s|$。

输入格式

输入只包含一组数据: - $n$ 表示存钱罐的数量,$2 \le n \le 10^5$。 - $s$ 是一个由 1 和 2 组成的序列,长度满足 $1 \le |s| \le 10^5$。

输出格式

输出一行,包含序列处理完后钱最少的两个存钱罐里的钱数,钱数按从小到大排序。 ## 示例 **输入:** ``` 3 111112 ``` **输出:** ``` 1 2 ``` **本翻译由 AI 自动生成**