Đổi tiền

Xem dạng PDF

Gửi bài giải


Điểm: 0,16 (OI)
Giới hạn thời gian: 0.38s
Giới hạn bộ nhớ: 512M
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
C, C++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch

Bạn được cho một tập hợp các mệnh giá tiền. Tập hợp luôn chứa phần tử mang giá trị ~1~. Mỗi mệnh giá có vô hạn các đồng tiền mang mệnh giá đó. Cho số tiền ~S~, hãy tìm cách đổi ~S~ thành ít đồng tiền nhất, sao cho mỗi đồng tiền có mệnh giá thuộc vào tập hợp đã cho.

Input

Dữ liệu vào gồm ~2~ dòng:

  • Dòng ~1~: Hai số nguyên dương ~N~ (số phần tử của tập hợp mệnh giá tiền) và ~S~ (số tiền cần đổi) ~(1 \leq N \leq 100~; ~1 \leq S \leq 10^{9})~.
  • Dòng ~2~: ~N~ số nguyên dương biểu thị mệnh giá của các phần tử trong tập hợp (giá trị không vượt quá ~100~).

Output

Dữ liệu ra gồm một số nguyên duy nhất là số đồng tiền ít nhất có thể đổi được.

Sample Input

2 3
1 2

Sample Output

2

Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.