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] Đếm tiến trình zombie

    Đếm tiến trình zombie

    Một tiến trình zombie là tiến trình con đã kết thúc nhưng cha chưa gọi wait() để thu hồi; mục trong bảng tiến trình của con vẫn tồn tại.

    Giả sử tiến trình cha tạo n con, tất cả n con đều đã exit, nhưng cha mới chỉ gọi wait() đúng w lần và cha vẫn đang chạy. Khi đó số tiến trình zombie là:

    max⁡(n−w, 0)\max(n - w,\ 0)max(n−w, 0)

    (Mỗi wait() thu hồi một con; các con đã chết mà chưa được thu hồi là zombie.)

    Cho n và w, hãy in số tiến trình zombie.

    Ví dụ I/O: n = 5, w = 2 → còn 5 - 2 = 3 zombie.

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

      Hai số nguyên n và w trên một dòng.

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

      0 <= n <= 1000000, 0 <= w <= 1000000

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

      Một số nguyên: số zombie max(n - w, 0).

    Ví dụ:

    Đầu vào:

    5 2
    

    Đầu ra:

    3

    Giải thích:

    Cha tạo 5 con đã chết nhưng chỉ wait 2 lần, nên 3 con chưa được thu hồi là zombie → in 3.

    Đang tải editor...