Tìm chữ số

Xem PDF

Điểm: 400 (p) Thời gian: 0.5s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Xét biểu diễn thập phân của phân số \(\frac{a}{b}\). Biểu diễn này có thể là một số thập phân hữu hạn hoặc một số thập phân vô hạn tuần hoàn. Nếu phân số có thể biểu diễn bởi một số thập phân hữu hạn, ta có thể viết thêm một dãy vô hạn các chữ số 0 vào sau chữ số cuối cùng sau dấu chấm thập phân và coi đó cũng là một số thập phân vô hạn tuần hoàn. Ví dụ:

\(\frac{100}{8}\) = 12,500...0...

\(\frac{17}{3}\) = 5,6666...6...

\(\frac{99}{140}\) = 0,70714285714285…714285…

Yêu cầu: Sau khi đánh số từ \(1\) trở đi, từ trái qua phải các chữ số đứng sau dấu “,” trong biểu diễn thập phân của \(\frac{a}{b}\), hãy xác định chữ số thứ \(k\).

Ví dụ:

  • Với \(a = 100, b = 8, k = 2\), chữ số đứng thứ \(2\) sau dấu chấm thập phân của giá trị \(\frac{100}{8}\) là chữ số \(0\).
  • Với \(a = 99, b = 140, k = 12\), chữ số đứng thứ \(12\) sau dấu chấm thập phân của giá trị \(\frac{99}{140}\) là chữ số \(2\).

Input:

  • Gồm các dòng:
    • Dòng thứ nhất chứa \(T\) là số bộ test.
    • \(T\) dòng tiếp theo, dòng thứ i chứa ba số nguyên dương \(a_i, b_i, k_i\).

Output :

  • Gồm \(T\) dòng, dòng thứ \(i\) là kết quả tương ứng với bộ test (\(a_i, b_i, k_i\)).

Scoring

  • Subtask \(1\) (\(20\%\) số điểm): \(T \leq 10,a \leq 10^9, b \leq 10^9, k \leq 10^5\).
  • Subtask \(2\) (\(20\%\) số điểm): \(T \leq 10 ^ 2,a \leq 10^{16}, b \leq 10^4, k \leq 10^{16}\).
  • Subtask \(3\) (\(60\%\) số điểm): \(T \leq 10 ^ 3,a \leq 10^{18}, b \leq 10^{18}, k \leq 10^{18}\).

Example

Test 1

Input
3
100 8 2
17 3 6
99 140 12 
Output
0
6
2

Bình luận