Loading Now

shoots

Trong trường bắn có n bia bắn, khi bắn trúng bia thứ i thì người chơi sẽ nhận được số điểm là a[i]. Mỗi bia có thể bắn nhiều lần mà vẫn nhận được điểm.

Hải là một thiện xạ bách phát bách trúng, nên Hải được đặt ra một thử thách là phải bắn sao cho tổng điểm phải đúng bắng x.

Cho dãy a chứa các số nguyên dương là số điểm của các bia, một số nguyên dương x. Hãy đưa ra số phát bắn tổi thiểu để tổng điểm Hải dành được đúng bằng x, nếu Hải không thể thực hiện được yêu cầu thì đưa ra 0.

Ví dụ:

  • Với a = [1, 8, 10]x = 24 thì shoots(a, x) = 3.
    Giải thích:
    Hải sẽ bắn cả 3 viên vào bia có 8 điểm.
  • Với a = [2, 4, 6, 8]x = 7 thì shoots(a, x) = 0.

Đầu vào/Đầu ra:

  • [Thời gian chạy] 0.5s với C++, 3s với Java và C#, 4s với Python, Go và JavaScript.

  • [Đầu vào] Array: Integer: a.
    1 ≤ a.size() ≤ 104.
    1 ≤ a[i] ≤ 109

  • [Đầu vào]: Integer: x.
    1 ≤ x ≤ 104.

  • [Đầu ra] Integer.
    Số phát bắn tổi thiểu để tổng điểm Hải dành được đúng bằng x, nếu Hải không thể thực hiện được yêu cầu thì đưa ra 0.



Author: Phan Đức Hải

Fanpage: CodeLearn.io

Group: Codelearn – Tự học lập trình C#, C++, Java, Python,Basic algorithms.

Post Comment

Contact