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

    solution

    Đề bài: [Toán rời rạc] Kiểm tra thỏa được công thức Horn-SAT

    Một mệnh đề Horn là tuyển của các literal trong đó có tối đa một literal dương. Công thức Horn-SAT thỏa được hay không có thể quyết định trong thời gian đa thức bằng lan truyền đơn vị (unit propagation), khởi đầu gán mọi biến False rồi ép các biến dương thành True khi thân mệnh đề được thỏa. Cho công thức gồm mmm mệnh đề Horn trên nnn biến, in SAT hoặc UNSAT.

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

      Dòng đầu: nnn, mmm. Mỗi mệnh đề trên một dòng bắt đầu bằng kkk (số literal), tiếp theo là kkk số nguyên khác 0 (mỗi mệnh đề có tối đa một số dương).

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

      1≤n≤1051 \le n \le 10^51≤n≤105, 0≤m≤2⋅1050 \le m \le 2\cdot 10^50≤m≤2⋅105.

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

      Một dòng: SAT nếu thỏa được, ngược lại UNSAT.

    Ví dụ:

    Đầu vào:

    3 3
    1 1
    2 -1 2
    2 -2 3
    

    Đầu ra:

    SAT

    Giải thích:

    Bắt buộc $x_1$ đúng $\Rightarrow x_2$ đúng $\Rightarrow x_3$ đúng; không mâu thuẫn nên `SAT`.

    Đang tải editor...