#PCBBAY0000054. Phân số chính xác của float (Exact Fraction of a Float)
Phân số chính xác của float (Exact Fraction of a Float)
Phân số chính xác của float (Exact Fraction of a Float)
Phiên bản: Phước Hưng OJ Extended
Đề bài
Cho số thực được đọc vào kiểu float của Python 3. Hãy tìm hai số nguyên và sao cho chính xác theo giá trị nhị phân đang lưu, với phân số ở dạng tối giản. Không sử dụng phân số biểu diễn số thập phân lý tưởng của văn bản đầu vào. Kết quả phải tương ứng với x.as_integer_ratio().
Input
Dòng duy nhất chứa số thực hữu hạn , được đọc thành Python 3 float.
Output
In hai số nguyên và trên một dòng, cách nhau một dấu cách; tử số trước, mẫu số dương sau. Phân số phải tối giản.
Subtask
- Subtask 1 (100 điểm): là giá trị
floathữu hạn. Mẫu số dương.
Ví dụ
Ví dụ 1
Input
0.5
Output
1 2
Giải thích. Giá trị được biểu diễn chính xác; tử số và mẫu số đã tối giản.
Ví dụ 2
Input
0.1
Output
3602879701896397 36028797018963968
Giải thích. Giá trị thập phân không có biểu diễn nhị phân hữu hạn. Phân số trong output là phân số tối giản biểu diễn chính xác giá trị float đã lưu, không phải .
Ví dụ 3
Input
1.25
Output
5 4
Giải thích. Vì và , nguyên tố cùng nhau, chương trình in 5 4.