Các lá bài Blackjack

View as PDF

Submit solution


Points: 0.56 (partial)
Time limit: 1.0s
Memory limit: 256M
Input: stdin
Output: stdout

Problem source:
Sưu tầm
Problem type
Allowed languages
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch

Blackjack là trò chơi đánh bài khá phổ biến, mục tiêu là có được những lá bài mà tổng của nó là lớn nhất nhưng không vượt quá ~21~. Lấy ý tưởng từ trò chơi này các bạn khaihanhdk, huytion156, thanhdat01234 đã sáng tạo ra một phiên bản mới của trò chơi cho riêng mình.

Trong phiên bản trò chơi mới này các bạn đã viết lên mỗi lá bài một số nguyên dương. Người tham gia trò chơi được cung cấp một tập gồm ~N~ lá bài và một số nguyên dương ~M~. Nhiệm vụ của người chơi là phải chọn ra ~3~ lá bài từ tập lá bài đã cho sao cho tổng các số trên ~3~ lá bài đã chọn là lớn nhất và không vượt quá ~M~.

Input

  • Dòng đầu ghi số nguyên dương ~N~, ~M~ ~(N \le 10000~, ~M \le 500000)~.
  • ~N~ dòng sau ghi ~N~ số nguyên dương đôi một khác nhau là các số được ghi trên ~N~ lá bài ~(1 \leq a_{i} \leq 10000)~.

Output

Ghi trên một dòng duy nhất là kết quả bài toán. Test luôn đảm bảo có kết quả.

Sample Input

6 20 7 9 6 2 1 5

Sample Output

20

Note

Chọn các lá bài mang số ~9~, ~6~, ~5~ ta có ~9 + 6 + 5 = 20 \le M~


Comments

Please read the guidelines before commenting.


There are no comments at the moment.