Problem hidden
|This problem was hidden by Editorial Board member probably because it has incorrect language|version or invalid test data, or description of the problem is not clear.|

CTF - Convert to Fraction

Hiện tại, bài tập này đã có trên online judge chính thức của VNOI, bạn có thể truy cập ở đây: https://oj.vnoi.info/problem/ctf


Mọi số hữu tỉ đều có thể biểu diễn dưới dạng phân số hoặc dạng thập phân vô hạn tuần hoàn.

  • (1) Biểu diễn dạng phân số của một số hữu tỉ là a/b, với a, b là các số nguyên, b khác 0, và ước chung lớn nhất của a và b bằng 1 (để đảm bảo phân số tối giản).
  • (2) Biểu diễn dạng thập phân vô hạn tuần hoàn của một số hữu tỉ là x.y(z), với x, y, z là các số nguyên (có thể có số 0 ở đầu). Trong biểu diễn này, (z) thể hiện cho phần tuần hoàn.

Biểu diễn phải đảm bảo trước tiên là y có ít chữ số nhất có thể, sau đó là z có ít chữ số nhất có thể. Ví dụ, biểu diễn 0.12(1212) là không hợp lệ; biểu diễn đúng là 0.(12).

Lưu ý rằng biểu diễn có thể không có phần y, và nếu số hữu tỉ có phần thập phân hữu hạn thì (z) = (0). Ví dụ, 1/3 = 0.(3), 20/13 = 1.(538461), 557/495 = 1.1(25), 5/1 = 5.(0), 3/2 = 1.5(0) …

Cho biểu diễn dạng thập phân vô hạn tuần hoàn của một số số hữu tỉ, hãy tìm biểu diễn dạng phân số của chúng.

Dữ liệu

Dòng đầu ghi T là số lượng số hữu tỉ cần tính toán. T dòng tiếp theo, mỗi dòng ghi một số hữu tỉ được biểu diễn dưới dạng thập phân vô hạn tuần hoàn, theo định dạng như mô tả ở (2).

Kết quả

Gồm T dòng, mỗi dòng ghi biểu diễn dạng phân số của số hữu tỉ tương ứng, theo định dạng như mô tả ở (1).

Giới hạn

Trong 50% số điểm:

  • 0 ≤ x ≤ 10^3
  • 0 ≤ y ≤ 10^3
  • 0 ≤ z ≤ 10^3

Trong 50% số điểm còn lại:

  • 0 ≤ x ≤ 10^10
  • 0 ≤ y ≤ 10^10
  • 0 ≤ z ≤ 10^10

Ví dụ

Dữ liệu

5
0.(3)
1.(538461)
1.1(25)
5.(0)
1.5(0)

Kết quả

1/3
20/13
557/495
5/1
3/2

Được gửi lên bởi:Race with time
Ngày:2009-07-04
Thời gian chạy:0.200s
Giới hạn mã nguồn:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Ngôn ngữ cho phép:Tất cả ngoại trừ: ERL GOSU JS-RHINO NODEJS PERL6 PYPY RUST SED VB.NET
Nguồn bài:Own

hide comments
2009-07-12 03:42:27 AnhDQ
@romand3: lim? mổ trâu ah :)) bài này cho đội giải toán = mt Casio thì ;))
2009-07-10 05:47:47 ta_kute
da xu li so lon roi ma cung 50 huhu
2009-07-06 09:25:50 __PuppY__
0.(9)=1
2009-07-06 07:17:57 Huy Luu
hix ai cho biết thuật toán với
2009-07-05 16:56:53 Fernando Torres
cho mình hỏi 0.(9) thì in ra bao nhiêu :-/

Last edit: 2009-07-05 16:58:28
2009-07-05 07:39:45 Huy Luu
Phải xài số lớn rồi! Số 999999999.999999999(999999999) không xử lý = extended hay int64 đc :(
2009-07-05 02:12:29 Hoàng Quý Phát
cái này có nhìu cách làm với lại chắc các bạn cũng học rùi !( trong SGK Toán lớp 7 tập 1 và SGK lớp 11 - phần Đại Số và Giải Tích )
2009-07-04 15:23:35 gxkrcmk
tinh lim sao :-s
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.