SOCKET - Ổ cắm
Dữ liệu vào: standard input
Dữ liệu ra: standard output
Giới hạn thời gian: 1.0 giây
Giới hạn bộ nhớ: 128 megabyte
Đăng bởi: adminchg

Trong nhà Nam hiện đang có n ổ cắm điện rời. Số lượng chỗ cắm trên mỗi ổ cắm điện này lần lượt là a1, a2, a3,... an chỗ cắm. Trên tường nhà Nam có một chỗ cắm cố định đang có điện. Vậy để cho một ổ cắm điện rời có điện thì phải cắm ổ cắm đó vào chỗ cắm cố định trên tường. Chúng ta cùng có thê cắm ổ cắm điện rời này vào một ổ cắm điện rời khác đang có điện.

Nam có m thiết bị sử dụng điện, để sử dụng thì các thiết bị này cần được cắm vào ổ cắm trên tường hoặc ổ cắm rời đang có điện.

Yêu cầu: Hãy giúp Nam tìm ra số ổ cắm rời ít nhất cần dùng để có thể sử dụng tất cả m thiêt bị điện này.

Dữ liệu vào:

- Dòng đầu tiên gồm 2 số nguyên dương n, m (n, m ≤ 105) lần lượt là số lượng ổ cắm và số lượng thiết bị.

- Dòng thứ hai gồm n số nguyên dương a1, a2, a3,... an (ai ≤ 105) là số chỗ cắm trên các ổ cắm rời tương ứng, mỗi số cách nhau một khoảng trắng.

Kết quả: Một số nguyên duy nhất cho biết số ổ cắm rời ít nhất cần sử dụng là bao nhiêu. Nếu đã sử dụng hết tất cả ổ cắm rời mà vẫn không đủ, in ra -1.

Ví dụ

Input

Output

3 4

3 2 2

2

5 5

1 3 1 2 1

-1

 

 
Back to Top