Submit solution

Points: 0.80
Time limit: 1.0s
Memory limit: 64M
Input: stdin
Output: stdout

Author:
Problem type

Phú là một học sinh giỏi trong lớp. Sắp tới, Phú phải thi để nhận chứng chỉ cho ~M~ môn học trong vòng ~N~ ngày. Mỗi môn học được đánh số từ ~1~ đến ~M~ và để nhận được chứng chỉ thứ ~i~ thì cần bỏ ra ~t_i~ ngày để ôn tập và các ngày ôn tập không cần liên tiếp. Một ngày Phú có thể tham gia thi, ôn tập hoặc nghỉ ngơi.

Bạn được biết lịch tổ chức các kì thi của ~M~ môn học sắp tới trong vòng ~N~ ngày. Hãy giúp Phú lên lịch sao cho số ngày cần là ít nhất để có thể lấy được ~M~ chứng chỉ.

Input

Dòng đầu tiên gồm ~2~ số nguyên ~N~, ~M~ ~(1 \leq N, M \leq 10^5)~.

Dòng tiếp theo gồm ~N~ số nguyên ~X_1, X_2, \cdots, X_N~ với ~X_i~ ~(0 \leq X_i \leq M)~ thể hiện cho ngày thứ ~i~ có kì thi để lấy chứng chỉ ~X_i~. Nễu ~X_i = 0~ thì ngày đó không có kì thi nào được tổ chức.

Dòng cuối cùng là ~M~ số nguyên ~t_1, t_2, \cdots, t_M~ với ~t_i~ ~(1 \leq t_i \leq 10^5)~ là số ngày cần ôn tập để lấy được chứng chỉ thứ ~i~.

Output

Gồm ~1~ số duy nhất là số ngày ít nhất để Phú có thể nhận được tất cả các chứng chỉ.

Nếu không thể lấy trong vòng ~N~ ngày thì xuất ~-1~.

Simple Input
9 2
1 1 2 0 1 2 1 1 2
2 1
Simple Output
5
Giải thích

Phú sẽ ôn tập ngày ~1~ cho môn thứ ~2~ và thi nó vào ngày thứ ~3~.

Phú sẽ ôn tập ngày ~2~ và ~4~ cho môn thứ ~1~ và thi nó vào ngày thứ ~5~.


Comments

Please read the guidelines before commenting.


There are no comments at the moment.