Gửi bài giải

Điểm: 5,00
Giới hạn thời gian: 2.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
C++

Poker là trò chơi với n lá bài trong một bộ bài, trong n lá bài sẽ có m lá jokers, k người chơi (n chia hết cho k).

Bắt đầu trò chơi, mỗi người chơi lấy n/k lá bài từ bộ bài. Người chơi có nhiều là jokers nhất sẽ là người chiến thắng và người đó sẽ nhận được số điểm là x – y (Trong đó x là số lá bài của người chiến thắng, y là số lá jokers lớn nhất của tất cả người chơi còn lại). Nếu có từ 2 người trở lên chiến thắng (có cùng số lá jokers) thì họ sẽ nhận được 0 điểm.

Ví dụ:

  • n = 8, m = 3, k = 2. Nếu người chơi thứ nhất nhận 3 lá jokers, 1 lá thường và người còn lại nhận 0 lá jokers, 4 lá bài thường, thì người thứ nhất sẽ chiến thắng nhận được 3 – 0 điểm.
  • n = 4, m = 2, k = 4. Hai người chơi nhận lá bài thường, còn hai người còn lại mỗi người nhận 1 lá jokers thì họ là người chiến thắng và đều nhận 0 điểm.
  • n = 9, m = 6, k = 3. Nếu người đầu tiên nhận 3 lá jokers, người thứ hai nhận 1 jokers, 2 lá thường và người thứ ba nhận được 2 joker, 1 thường, thì người đầu tiên sẽ chiến thắng nhận số điểm là 3 – 2 = 1
  • n = 42, m = 0, k =7. Trường hợp này không ai có jokers và tất cả mọi người đều nhận 0 điểm.

Cho n,m và k. Hãy tính số điểm lớn nhất người chơi có thể đạt được.

INPUT

        Dòng đầu tiên chứa số nguyên t (1 <= t <= 500) số lượng testcase.

Mỗi t dòng chứa ba số nguyên n, m, k ( 2 <= n <= 50, 0 <= m <= n, 2 <= k <= n, n chia hết cho k)

OUTPUT

        Với mỗi testcase in ra điểm lớn nhất người chơi có thể đạt được.


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.