学校组织同学们(共有 N 名同学)到电影院看电影,张老师想要将每个年级的同学单独组织成一个单向链表(假设:X 年级的同学学号最后一位数字为 X)。
组织方法如下:
每位同学按来的先后顺序依次坐入编号为 1 \sim N 的座位中;
每位 X 年级同学记住自己前一位 X 年级同学的位置,最后一位 X 年级的同学作为 X 年级链表的头;
这样就形成了一个单向链表。
比如,假设有如下几位学号的同学依次落座:2 3 5 11 23 42 83,他们的座位号分别是:1 2 3 4 5 6 7。
1 年级链表头在 4 号位置,该年级链表从头到尾有: 11;
2 年级链表头在 6 号位置,该年级链表从头到尾有: 42 2;
3 年级链表头在 7 号位置,该年级链表从头到尾有: 83 23 3;
5 年级链表头在 3 号位置,该年级链表从头到尾有: 5 ;
请编程模拟上述链表,并按年级从低到高的顺序,输出每个年级链表上从链表头到链表尾所有同学的学号(如果某个年级的同学从来没有来过,该年级不需要输出)。
第 1 行读入 N;
接下来 N 行每行有互不相等的整数 A_i,代表同学的学号。
按照年级从低到高输出若干行;
对于每个年级的链表,先输出年级编号,再换行输出某个年级从链表头到链表尾每个同学的学号。
7 2 3 5 11 23 42 83
1 11 2 42 2 3 83 23 3 5 5
1 \le N \le 10^5,1 \le A_i \le 10^5。
东方博宜OJ