AO LÀNG S2 LẦN II - Cải tiến code

Xem dạng PDF

Gửi bài giải

Điểm: 100,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: caitien.inp
Output: caitien.out

Dạng bài
Máy chấm
Alisa Mikhailovna Kujou, Kanade Yoisaki

Trong một tiết học Toán, cô giáo đã cho cả lớp một bài toán khá khoai. Mặc dù chỉ cần dùng não và giấy để giải quyết bài toán, nhưng Loli lại rất thích làm màu. Hắn lôi ra từ trong cặp một chiếc máy tính bàn, một chiếc màn hình ~32~ inch, một chiếc bàn phím cơ và một con chuột gaming lập lòe. Trời ạ, hắn lại định dùng code để giải quyết một bài toán.

Nhanh chóng mở CodeBlocks, hắn nhập "lời giải" cho bài toán như sau:

int n;
double res = 0.0;

int main() {
    cin >> n;
    for(long long i = 1; i <= n; ++i) {
        res = res + 1.0 / (i*(i+1));
    }
    res = (1.0-res)*1000000000;
    cout << fixed << setprecision(6) << res;
}

Với "lời giải" này, hắn tự tin rằng mình sẽ là người giải bài toán đầu tiên của lớp. Tuy nhiên, hắn chờ mãi mà không thấy "lời giải" của mình ghi ra đáp số...

Bạn có thể cải tiến "lời giải" của Loli được không?

Input:

Bài này có nhiều test nhỏ trong một file test, các bạn chú ý.

Lấy từ tệp CAITIEN.INP gồm:

  • Dòng đầu tiên chứa một số nguyên dương ~T~ ~(1\le T\le 10^4)~ là số test nhỏ.
  • ~T~ dòng sau, mỗi dòng chứa một số nguyên dương ~n~ ~(1 \le n \le 10^9)~ - là đầu vào bài toán của cô giáo.

Output:

Ghi ra tệp CAITIEN.OUT gồm:

  • ~T~ dòng, dòng thứ ~i~ chứa một số thực ghi đáp án của test thứ ~i~. Ghi ra ~6~ chữ số phần thập phân.
  • Đáp án của bạn được coi là chính xác nếu sai lệch không quá ~10^{-6}~ so với đáp án đúng của cô giáo.
Sample Input 1
3
2
69
177013
Sample Output 1
333333333.333333
14285714.285714
5649.270679

Ràng buộc

  • Có ~50\%~ test có ~T\times n \le 10^8~;
  • Các test còn lại không có ràng buộc gì thêm.

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.