给出两个整数 n,m,在给出一个大小为 n 的集合 B,要求构造一个序列 A,满足以下条件:
在序列 A 合法的条件下满足长度最大化,并给出一种构造方案。
第一行两个整数 n,m。
第二行(若 n=0 则没有)输入 n 个整数,表示集合 B。
第一行一个整数,表示序列 A 的最大长度 ∣A∣。
第二行 ∣A∣ 个整数,表示序列 A。
0≤n,m≤2×105。
### 题目描述
给出两个整数 $n, m$,在给出一个大小为 $n$ 的集合 $B$,要求构造一个序列 $A$,满足以下条件:
- $\forall x \in A$ 有 $0 \leq x < m$。
- $\forall i, j, 1 \leq i, j \leq |A|$, 有 $\prod \limits _{k = 1}^{i}A_k \neq \prod \limits _{k = 1}^{j}A_k$
- $\forall i, 1 \leq i \leq |A|$, 有 $\prod \limits _{k = 1}^{i}A_k \notin B$
在序列 $A$ 合法的条件下满足长度最大化,并给出一种构造方案。
### 输入格式
第一行两个整数 $n, m$。
第二行(若 $n = 0$ 则没有)输入 $n$ 个整数,表示集合 $B$。
### 输出格式
第一行一个整数,表示序列 $A$ 的最大长度 $|A|$。
第二行 $|A|$ 个整数,表示序列 $A$。
### 数据范围
$0 \leq n, m \leq 2 \times 10^5$。