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

    solution

    Đề bài: [Lập trình Web & Backend] Định tuyến ưu tiên route tĩnh

    Định tuyến ưu tiên route tĩnh

    Router khớp route theo quy tắc: với cùng số segment, route tĩnh được ưu tiên hơn route động ở từng vị trí. Mỗi route là một mẫu (segment tĩnh hoặc :param). Khi nhiều route khớp một URL, chọn route có nhiều segment tĩnh khớp nhất; nếu vẫn hòa, chọn route xuất hiện trước trong danh sách.

    Mỗi route gắn một handler. Cho danh sách pattern handler, rồi các URL. In handler khớp tốt nhất, hoặc 404.

    Ví dụ

    Routes: /users/me => me, /users/:id => show. URL /users/me khớp cả hai nhưng route tĩnh me thắng → me.

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

      Dòng 1: số nguyên N. N dòng: pattern handler. Dòng kế: số nguyên M. M dòng: URL.

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

      1 ≤ N, M ≤ 200. Segment cách nhau bởi '/'.

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

      M dòng: handler hoặc 404.

    Ví dụ:

    Đầu vào:

    2
    /users/me me
    /users/:id show
    2
    /users/me
    /users/42
    

    Đầu ra:

    me
    show

    Giải thích:

    /users/me khớp route tĩnh 'me' (2 segment tĩnh) thắng route động 'show' (1 tĩnh).

    Đang tải editor...