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

    solution

    Đề bài: [Trình biên dịch] LR: Tra cứu và diễn giải bảng ACTION

    Đề bài

    Bảng ACTION của bộ phân tích LR ánh xạ (trạng thái, ký hiệu kết thúc) tới một hành động. Hãy viết chương trình tra cứu và diễn giải hành động cho các truy vấn:

    • s<k> → shift to <k>
    • r<k> → reduce by <k>
    • acc → accept
    • ô trống → error

    Ví dụ

    Ô (0, a) = s2 được diễn giải là shift to 2.

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

      Dòng đầu na. na dòng state symbol action. Dòng tiếp q. q dòng, mỗi dòng state symbol cần tra cứu.

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

      1 ≤ na ≤ 200, 1 ≤ q ≤ 100.

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

      Mỗi truy vấn in một dòng diễn giải: shift to <k>, reduce by <k>, accept, hoặc error.

    Ví dụ:

    Đầu vào:

    3
    0 a s2
    1 $ acc
    2 $ r1
    4
    0 a
    1 $
    2 $
    0 b
    

    Đầu ra:

    shift to 2
    accept
    reduce by 1
    error

    Giải thích:

    (0,a)=s2 -> shift to 2. (1,$)=acc -> accept. (2,$)=r1 -> reduce by 1. (0,b) không có -> error.

    Đang tải editor...