[THHV 2017 - CHVT - 11] Bài 1: XÁCH NƯỚC

Xem dạng PDF

Gửi bài giải

Điểm: 10,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 1G
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Output Only, Pascal, PyPy, Python, Scratch, TEXT

Trong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài

Thầy Hòa muốn quét dọn lau chùi sạch sẽ phòng Tin học của nhà trường để chuẩn bị cho kỳ thi Olympic Trại hè Hùng Vương.

Thầy Hòa giao nhiệm vụ cho bạn Nam xách một lượng chính xác ~M~ đơn vị nước (~1 \le M \le 200~) để lau nền nhà và máy tính (vì máy tính sau hè rất bụi bặm). Thật không may, bạn Nam chỉ mượn được 2 thùng nước có kích cỡ nguyên ~X~ và ~Y~ (~1 \le X, Y \le 100~) mà bạn ấy có thể dùng để xách nước. Cả hai thùng ban đầu đều rỗng. Bạn Nam còn ~K~ (~1 \le K \le 100~) phút nữa là đến giờ hẹn đi đá bóng; vì vậy sử dụng hai thùng này, mỗi phút bạn ấy có thể thực hiện những thao tác sau:

  • Múc nước đầy hoàn toàn một trong hai thùng.
  • Có thể để hai thùng trống.
  • Có thể đổ nước từ một thùng này sang thùng kia, và dừng lại khi thùng đầu cạn nước hoặc thùng thứ hai đầy nước (cái nào cũng có thể xảy ra trước).
  • Xách nước lên phòng Tin học.

Mặc dù, bạn Nam nhận ra rằng bạn ấy sẽ không có khả năng kết thúc với chính xác ~M~ đơn vị nước tổng cộng trong hai thùng, vì vậy hãy giúp bạn ấy tính toán sai số nhỏ nhất giữa ~M~ và tổng lượng nước trong hai bình. Đó là, hãy tính toán giá trị nhỏ nhất của giá trị tuyệt đối hiệu giữa ~M~ và ~M'~ (~|M - M'|~) sao cho bạn Nam có thể đổ đầy được tổng cộng ~M'~ đơn vị nước trong cả hai thùng.

Yêu cầu: Hãy xác định sai lệch nhỏ nhất giữa ~M~ với lượng nước mà bạn Nam có thể đổ được trong cả hai thùng.

Input

  • Dòng đầu tiên và duy nhất chứa ~X, Y, K~ và ~M~.

Output

  • Đưa ra sai lệch nhỏ nhất giữa ~M~ với lượng nước mà bạn Nam có thể đổ được trong cả hai thùng.

Sample Input 1

14 50 2 32

Sample Output 1

18

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.