Cho một mảng số nguyên $A$ và một tập số nguyên $B$, sao cho tất cả các số trong $A$ và $B$ đều đôi một khác nhau. Nhiệm vụ của bạn là biến $A$ thành một mảng đã sắp xếp. Để làm điều đó, bạn có thể lấy một số bất kỳ từ $B$ và dùng nó thay thế một phần tử bất kỳ của $A$. Bạn có thể thực hiện thao tác này bao nhiêu lần tùy ý, nhưng mỗi phần tử của $B$ chỉ được dùng nhiều nhất một lần.
Hãy xác định số thao tác ít nhất cần thiết để biến $A$ thành mảng đã sắp xếp, hoặc xác định rằng điều đó là không thể.
Dữ liệu vào
Dòng đầu tiên chứa hai số nguyên $N$ và $M$ ($1 \le N,M \le 5\cdot10^5$), lần lượt là kích thước của $A$ và $B$.
Dòng thứ hai chứa $N$ số nguyên $A_1,A_2,\ldots,A_N$.
Dòng thứ ba chứa $M$ số nguyên $B_1,B_2,\ldots,B_M$.
Tất cả $N+M$ phần tử đều đôi một khác nhau, dương và không vượt quá $10^9$.
Dữ liệu ra
Nếu không thể biến $A$ thành mảng đã sắp xếp, in ra $-1$. Ngược lại, in ra số thao tác ít nhất cần thiết.
Ví dụ
Dữ liệu vào 1
4 1 2 6 13 10 5
Dữ liệu ra 1
-1
Dữ liệu vào 2
4 2 2 6 13 10 5 4
Dữ liệu ra 2
2
Dữ liệu vào 3
4 3 2 6 13 10 5 4 19
Dữ liệu ra 3
1
Ghi chú
Trong cả ba ví dụ, vấn đề là $13>10$, nên ta phải thay đổi ít nhất một trong hai số này.
Ở ví dụ đầu, ta có thể giảm $13$ bằng cách thay nó bằng $5$, nhưng điều đó làm hỏng thứ tự ở phía còn lại, nên không có lời giải.
Ở ví dụ thứ hai, ta còn có $4$ để sửa phía bị hỏng. Không thể thực hiện với ít hơn $2$ thao tác.
Ở ví dụ thứ ba, cuối cùng ta có thể tăng phần tử cuối, nhờ đó sắp xếp $A$ bằng $1$ thao tác.