AT_agc001_d [AGC001D] Arrays and Palindrome
题目描述
给你一个长度为 $M$ 的序列 $A$,和一个整数 $N$,你需要构造序列 $a$,$b$,保证 $A$ 是 $a$ 的重排列。
* $a$,$b$ 数列的数字总和都是 $N$;
* $a$,$b$ 中的数都是正整数;
* 对于满足以下两个条件的数列,所有元素必定是相同的。
* 最开始的 $a_1$ 个元素, 接下来的 $a_2$ 个元素,更后面的 $a_3$ 个,等等,都是回文;
* 最开始的 $b_1$ 个元素, 接下来的 $b_2$ 个元素,更后面的 $b_3$ 个,等等,都是回文。
输入格式
>
>第一行两个整数 $N, M$。
>
>之后一行,第 $i$ 个整数是 $A_i$。
>
输出格式
>
>如果存在解, 输出三行,第一行数列 $a$,第二行 $b$ 的长度,第三行数列 $b$。
>
>否则输出 `Impossible`(大小写敏感!)。
感谢 @ToBiChi 提供翻译。
说明/提示
- $1≤N≤10^5$;
- $1≤M≤100$;
- $1≤A_i≤10^5$。
数据保证 $A_i$ 的和是 $N$。