Water Jug Problem


Submit solution

Points: 1
Time limit: 1.0s
Memory limit: 500M

Author:
Problem type

Có hai chiếc bình chứa nước với dung tích lần lượt là a lít và b lít. Hãy đong chính xác c lít nước bằng cách sử dụng hai chiếc bình này. Biết rằng nước là không hạn chế, a, b, c là các số nguyên dương và một số hành động có thể được thực hiện như sau:

  1. Đổ đầy một trong hai bình.
  2. Làm rỗng một trong hai bình.
  3. Chuyển nước từ một bình này sang bình kia cho đến khi bình đó đầy hoặc bình kia hết nước.

Input: Là giá trị a,b,c mỗi giá trị cách nhau 1 dấu cách Ouput: Các bước mô tả cách thức thực hiện thay đổi nước giữa các bình hoặc ghi ""khong co loi giai" nếu bài toán không tìm ra lời giải.

Ví dụ:

Input:

3 5 4

Ouput:

(0, 0) -> (0, 5) -> (3, 2) -> (0, 2) -> (2, 0) -> (2, 5) -> (3, 4)

Giải thích:

  1. Đổ đầy bình 2 (5 lít).
  2. Chuyển nước từ bình 2 sang bình 1 (bình 1 có 3 lít, bình 2 còn 2 lít).
  3. Đổ hết bình 1.
  4. Chuyển 2 lít từ bình 2 sang bình 1 (bình 1 có 2 lít, bình 2 rỗng).
  5. Đổ đầy bình 2 (5 lít).
  6. Chuyển nước từ bình 2 sang bình 1 (bình 1 đầy 3 lít, bình 2 còn 4 lít).
  7. Bình 2 lúc này chứa đúng 4 lít nước.

Comments

There are no comments at the moment.