1563 - TÌM 2 PHÂN SỐ

Tạo bởi: GV. Bùi Phú Khuyên

Mô tả yêu cầu

Bạn Minh đang tìm hiểu vể Phân Số. Phân số là sự biểu diễn số hữu tỷ dưới dạng tỷ lệ của hai số nguyên, trong đó số ở trên được gọi là tử số, còn số ở dưới được gọi là mẫu số. Điều kiện bắt buộc là mẫu số phải khác 0.

17164460814059.png

Cho trước tử số x và mẫu số y đều là các số nguyên dương. Hãy tìm 2 phân số khác nhau đều có tử số là 1 và tổng của chúng bằng x/y ?.

Gọi 2 phân số tìm được là phân số thứ 1 và phân số thứ 2, biết rằng phân số thứ 1 nhỏ hơn phân số thứ 2. Trường hợp có nhiều đáp án thỏa mãn điều kiện, hãy chọn một cặp có phân số thứ 1 là phân số lớn nhất tìm được. Nếu không tìm thấy thì trả về -1. Hãy giúp bạn Minh tìm 2 phân đó?

Dữ liệu vào

1 dòng gồm 2 số nguyên dương x, y cách nhau bằng kí tự khoảng trắng

Dữ liệu ra

2 phân số tìm được theo thứ tự từ giá trị nhỏ đến lớn mà có tổng bằng x/y, nếu không tìm được thì ghi ra -1.

Giới hạn

  • 1 ≤ x ≤ 10^9
  • 1 ≤ y ≤ 10^9

Ví dụ

Dữ liệu vào Sao chép
1 2
Dữ liệu ra Sao chép
1/6 1/3
Dữ liệu vào Sao chép
2 9
Dữ liệu ra Sao chép
1/18 1/6
Dữ liệu vào Sao chép
5 7
Dữ liệu ra Sao chép
-1

Gợi ý/Hướng dẫn

Giải thích ví dụ:

  • (1) Với x = 1, y = 2. Tìm được phân số thứ 1 và thứ 2 là: (1/6 ; 1/3).
  • (2) Với x = 2, y = 9. Tìm được 1/181/6. (1/451/5 cũng thỏa điều kiện đáp tổng nhưng bị loại vì 1/45 < 1/18).
  • (3) Không tìm được nên trả về kết quả -1.
Đăng nhập để làm bài
Thông tin
Giới hạn thời gian 1 giây
Giới hạn bộ nhớ 128 MB