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] Dịch vụ trọng yếu nhất

    Dịch vụ trọng yếu nhất

    Quan hệ A B nghĩa là A Requires B. Nếu một dịch vụ fail, mọi dịch vụ phụ thuộc nó (trực tiếp/gián tiếp) cũng sập.

    Hãy tìm dịch vụ trọng yếu nhất: dịch vụ mà khi nó fail sẽ kéo theo nhiều dịch vụ khác sập nhất. Nếu nhiều dịch vụ cùng số lượng ảnh hưởng, chọn dịch vụ có tên nhỏ nhất theo bảng chữ cái.

    In ra tên dịch vụ đó và số dịch vụ khác bị kéo sập.

    Ví dụ

    web db, db net (web cần db, db cần net). net fail → db, web sập (2). net là trọng yếu nhất → net 2.

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

      Dòng đầu là n, sau đó n dòng tên dịch vụ. Dòng tiếp là m, sau đó m dòng A B (A Requires B).

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

      1 ≤ n ≤ 100. Đồ thị không có chu trình.

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

      Tên dịch vụ trọng yếu nhất và số dịch vụ khác bị kéo sập, cách nhau bởi dấu cách.

    Ví dụ:

    Đầu vào:

    3
    web
    db
    net
    2
    web db
    db net
    

    Đầu ra:

    net 2

    Giải thích:

    net fail kéo sập db và web (2); db fail chỉ kéo web (1); net ảnh hưởng nhiều nhất nên in net 2.

    Đang tải editor...