Các lượt nộp
    Danh sách bài
    Trang chủ
    Báo lỗi

    solution

    Đề bài: [Hệ điều hành Unix] Số lời gọi fork đã thực hiện

    Số lời gọi fork đã thực hiện

    Một chương trình thực hiện n đợt fork() liên tiếp; ở mỗi đợt, mọi tiến trình đang tồn tại đều gọi fork() một lần. Số tiến trình tăng từ 1 lên 2^n.

    Vì mỗi lời gọi fork() thành công tạo đúng một tiến trình mới, tổng số lời gọi fork bằng số tiến trình con được sinh ra, tức 2^n - 1.

    Ví dụ

    Với n = 2: số tiến trình cuối là 4, có 3 tiến trình mới được tạo, vậy 3 lời gọi fork.

    • Định dạng đầu vào:

      Một số nguyên n.

    • Ràng buộc đầu vào:

      0 ≤ n ≤ 60.

    • Định dạng đầu ra:

      Một số nguyên: tổng số lời gọi fork 2^n - 1.

    Ví dụ:

    Đầu vào:

    2
    

    Đầu ra:

    3

    Giải thích:

    Số tiến trình tăng 1→2→4. Có 3 tiến trình mới sinh ra nên có 2^2 - 1 = 3 lời gọi fork.

    Đang tải editor...