#CCBCHBAHAI0000074. Chèn x sau lần xuất hiện đầu tiên của y (Insert x After the First Occurrence of y)

Chèn x sau lần xuất hiện đầu tiên của y (Insert x After the First Occurrence of y)

Chèn x sau lần xuất hiện đầu tiên của y (Insert x After the First Occurrence of y)

Nguồn: Phước Hưng OJ

Phiên bản: Phước Hưng OJ Extended

Đề bài

Một mảng tĩnh có sức chứa CC và kích thước logic hiện tại nn, với

1≤n≤C.1\le n\le C.

Dãy đang sử dụng là a0,a1,…,an−1a_0,a_1,\ldots,a_{n-1}. Cho hai số nguyên xx và yy.

Đặt

I={i∣0≤i<n, ai=y}.I=\{i\mid 0\le i<n,\ a_i=y\}.
  • Nếu I=∅I=\varnothing, không thay đổi mảng.
  • Nếu I≠∅I\ne\varnothing nhưng n=Cn=C, mảng đã đầy nên không thể chèn; giữ nguyên mảng.
  • Nếu I≠∅I\ne\varnothing và n<Cn<C, đặt p=min⁡Ip=\min I và chèn xx ngay sau vị trí pp. Khi đó kích thước mới là n+1n+1 và mảng mới bb thỏa
bi=ai(0≤i≤p),b_i=a_i\quad(0\le i\le p), bp+1=x,b_{p+1}=x, bi=ai−1(p+2≤i≤n).b_i=a_{i-1}\quad(p+2\le i\le n).

Hãy in kích thước logic và nội dung mảng sau thao tác.

Input

Dòng đầu chứa CC và nn. Dòng thứ hai chứa nn số nguyên aia_i. Dòng thứ ba chứa xx và yy.

Output

Dòng đầu in kích thước logic sau thao tác. Dòng thứ hai in toàn bộ các phần tử đang thuộc mảng logic theo thứ tự.

Subtask

Subtask 1 (20 điểm): 1≤n≤C≤101\le n\le C\le10, ∣ai∣,∣x∣,∣y∣≤103|a_i|,|x|,|y|\le10^3.

Subtask 2 (30 điểm): 1≤n≤C≤50001\le n\le C\le5000, ∣ai∣,∣x∣,∣y∣≤106|a_i|,|x|,|y|\le10^6.

Subtask 3 (50 điểm): 1≤n≤C≤2⋅1051\le n\le C\le2\cdot10^5, ∣ai∣,∣x∣,∣y∣≤109|a_i|,|x|,|y|\le10^9.

Ví dụ

Input

8 6
4 2 7 2 9 5
100 2

Output

7
4 2 100 7 2 9 5

Giải thích

Lần xuất hiện đầu tiên của y=2y=2 ở chỉ số 11. Vì n<Cn<C, chèn 100100 vào chỉ số mới 22 và dịch đoạn còn lại sang phải.