SUM4 - Tính tổng phiên bản 4

Xem dạng PDF

Gửi bài giải

Điểm: 1,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M

Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C#, C++, Go, Java, Pascal, Perl, PHP, Python, Ruby, Rust, Scratch, Swift

Với số nguyên dương ~n~, tính tổng:

$${S_n} = 1 + \frac{1}{{1 + 2}} + \frac{1}{{1 + 2 + 3}}+... + \frac{1}{{1 + 2 + ... + n}}$$

Input

  • Dòng đầu ghi số nguyên dương ~T~ là số bộ test;
  • ~T~ dòng tiếp theo, mỗi dòng chứa một số nguyên dương ~n~.

Giới hạn:

  • ~1 ≤ T ≤ 10^5, 1 ≤ n ≤ 10^6~.

Output

  • Với mỗi bộ test, ghi ra trên một dòng số ~S_n~ làm tròn đến ~8~ chữ số thập phân.

Sample

Input #1
3
1
5
100
Output #1
1.00000000
1.66666667
1.98019802

Problem source: Chuyên Sơn La Online Judge


Bình luận

Hãy đọc nội quy trước khi bình luận.



  • 1
    kkdh  đã bình luận lúc 16, Tháng 4, 2024, 14:57

    include <bits/stdc++.h>

    using namespace std; int t,n; double s; int main() { cin>>t; while(t--) { s=0; cin>>n; for(long long i=1;i<=n;i++) { s+=2.0/(i*(i+1)); } cout<<fixed<


  • 7
    thh  đã bình luận lúc 23, Tháng 1, 2024, 9:51

    Công thức chuẩn cho mỗi test với n là số nhập vào là 2n / (n + 1) nha mn, ai thấy có ích cho mik xin upvote với


  • 0
    Iamnotsmart  đã bình luận lúc 14, Tháng 12, 2023, 16:22

    cách làm bài này python nhé

    for i in range(int(input())):
        a=int(input())
        print("{:.8f}".format((1-1/(a+1))*2))
    

  • -1
    tanh1603  đã bình luận lúc 24, Tháng 11, 2023, 12:51

    include <bits/stdc++.h>

    using namespace std ;

    define MAXN 100

    long long tong(int n){ long long sum = 0 ; sum = ((n+1)*n) / 2; return sum ; } int main(){ ios::syncwithstdio(false); cin.tie(0); cout.tie(0); int t ; cin >> t ; while(t--){ int n ; cin >> n; double s = 0; s = 2.0 - 2.0 / (n+1); cout << fixed << setprecision(8)<< s << endl; } }


  • 6
    nguien_24  đã bình luận lúc 11, Tháng 11, 2023, 10:46

    S(n) = 2 - 2 / (n+1)


  • 0
    hongthuc06  đã bình luận lúc 16, Tháng 10, 2023, 10:09

    khai bao long double la AC nha


  • 0
    cthang07  đã bình luận lúc 23, Tháng 9, 2023, 12:44

    e lưu và dùng lại mẫu r sao vẫn bị tle nhỉ


  • -9
    lethanhtung  đã bình luận lúc 13, Tháng 9, 2023, 10:40

    Bình luận này đã bị ẩn vì có quá nhiều phản ứng tiêu cực. Nhấn để xem.


  • 0
    ngcduy567  đã bình luận lúc 11, Tháng 9, 2023, 6:57

    test cuối là thế nào vậy ạ admin ? xem giúp em với ạ


  • 0
    vdtue  đã bình luận lúc 7, Tháng 9, 2023, 13:24

    test cúi ảo quas =))))))))))))))))))))))))))


  • 0
    nobo1nangdau  đã bình luận lúc 29, Tháng 8, 2023, 5:28

    ai biet bai nay lam nhu nao khong a .test cuối cứ sai hoài


  • 0
    tognoek  đã bình luận lúc 27, Tháng 8, 2023, 2:30

    ai có code đẹp xin nếu n là 100000 thì đáp án là gì với ạ


  • 0
    yoonicornsyndrome  đã bình luận lúc 12, Tháng 8, 2023, 7:28

    cho em hỏi làm sao để test cuối k bị TLE nữa ạ?


    • 0
      Hieu Nguyen  đã bình luận lúc 12, Tháng 8, 2023, 15:54

      Em nên lưu và dùng lại mẫu số của phân số trước đó thay vì tính lại mẫu số mỗi lần.


      • 0
        Mr_NoBody  đã bình luận lúc 4, Tháng 3, 2024, 0:28

        Thử rồi nma vẫn TLE ạ


      • 1
        piecesmeow369  đã bình luận lúc 5, Tháng 9, 2023, 15:55

        for(int i = 0 ; i < n ;i++){

        cin >> a[i];
        

        }

        for(int i = 0 ; i < n;i++){

        cout << setprecision(8) << fixed << 2*(1-1/(a[i]+1)) << endl;
        

        }


        em dùng công thức để tính luôn chứ nma vẫn bị tle là sao ạ:(


        • 1
          codega  đã bình luận lúc 27, Tháng 10, 2023, 5:15

          công thức sai r bạn, mấy bài này phải tìm ra công thức chung mới tối ưu dc thời gian


      • 1
        lch101  đã bình luận lúc 28, Tháng 8, 2023, 14:51

        Cho e hỏi là e test kỹ lắm r. Test 1e6 cx check rồi mà vẫn bị wa ở test cuối