#P1206. 试炼之塔

试炼之塔

题目描述

考古学教授小可发现了一本古代冒险者的游历日志。日志中按时间顺序记录了冒险者每天所在的塔层。已知冒险者在游历途中挑战了多座不同的试炼之塔,每座塔都有其固定的层数。在挑战某座塔时,他一定从第 11 层开始,此后每天上升 11 层,直到抵达该塔的顶层并完成挑战。随后他会前往下一座试炼之塔,再次从第 11 层开始挑战。

现在小可得到了这样一份连续的日志数字序列,你的任务是反推出每一座试炼之塔的层数,从而还原冒险者的完整游历路线。

输入格式

第一行一个整数 nn,表示日志序列的长度。

第二行 nn 个正整数,用空格隔开,表示按时间顺序记录的塔层序列。

输出格式

第一行输出一个整数 mm,表示挑战的试炼之塔数量。

第二行输出 mm 个整数,表示每座塔的层数,按照序列中的挑战顺序输出。

样例

7
1 2 3 1 2 3 4
2
3 4
4
1 1 1 1
4
1 1 1 1
5
1 2 3 4 5
1
5
5
1 2 1 2 1
3
2 2 1

样例解释

  • 样例 11:序列为 1,2,3,1,2,3,41, 2, 3, 1, 2, 3, 4。可分成两段:[1,2,3][1, 2, 3][1,2,3,4][1, 2, 3, 4],分别对应两座试炼之塔,层数为 3344
  • 样例 22:序列为 1,1,1,11, 1, 1, 1。每个 11 都是单独的一段,表示四座层数为 11 的塔。
  • 样例 33:序列为 1,2,3,4,51, 2, 3, 4, 5。这是一个完整的递增段,只有一座层数为 55 的塔。
  • 样例 44:序列为 1,2,1,2,11, 2, 1, 2, 1。可分成三段:[1,2][1, 2][1,2][1, 2][1][1],层数依次为 2,2,12, 2, 1

数据范围

对于 50%50\% 的数据,1n10001\le n\le 1000

对于 100%100\% 的数据,1n1061\le n\le 10^6