Các lượt nộp
    Danh sách bài
    Trang chủ
    Báo lỗi
    solution
    Đăng nhập
    Đăng nhập

    Đề bài: [Thiết kế Web] Robots.txt nâng cao với wildcard

    📖Cần ôn lý thuyết? Đọc bài giảng Buổi 15: Triển khai Website và tổng kết khóa — khóa Thiết kế Web

    Cho một danh sách quy tắc robots.txt (chỉ gồm 1 nhóm áp dụng cho tất cả bot), mỗi quy tắc là "Allow: pattern" hoặc "Disallow: pattern". Pattern có thể chứa ký tự đại diện '*' (khớp 0 hoặc nhiều ký tự bất kỳ) và có thể kết thúc bằng ký tự '$' nghĩa là phần khớp phải kết thúc chính xác ở đó (không cho phép ký tự thừa sau). Nếu pattern rỗng, quy tắc đó không khớp với path nào.

    Với mỗi path, tìm tất cả quy tắc khớp (pattern khớp từ đầu path, nếu có '′thıˋphảikhớpđe^ˊnhe^ˊtpath);trongso^ˊcaˊcquyta˘ˊckhớp,chọnquyta˘ˊccoˊđộdaˋichuo^~ipattern(tıˊnhcảkyˊtự′' thì phải khớp đến hết path); trong số các quy tắc khớp, chọn quy tắc có độ dài chuỗi pattern (tính cả ký tự '′thıˋphảikhớpđe^ˊnhe^ˊtpath);trongso^ˊcaˊcquyta˘ˊckhớp,chọnquyta˘ˊccoˊđộdaˋichuo^~ipattern(tıˊnhcảkyˊ​tự′' nếu có) LỚN NHẤT; nếu có nhiều quy tắc cùng độ dài lớn nhất, Allow luôn thắng Disallow. Nếu không có quy tắc nào khớp, path mặc định là DUOC PHEP.

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

      Dòng 1: số nguyên L. L dòng tiếp theo, mỗi dòng "Allow: pattern" hoặc "Disallow: pattern". Dòng kế: số nguyên q. q dòng tiếp theo, mỗi dòng một path.

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

      1 <= L <= 50. 1 <= q <= 50. Pattern không chứa khoảng trắng.

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

      In ra q dòng "BI CHAN" hoặc "DUOC PHEP" theo đúng thứ tự.

    Ví dụ:

    Đầu vào:

    4
    Disallow: /private/
    Allow: /private/public/
    Disallow: /*.pdf$
    Allow: /docs/*.pdf$
    6
    /private/secret
    /private/public/report
    /file.pdf
    /docs/manual.pdf
    /file.pdfx
    /home
    

    Đầu ra:

    BI CHAN
    DUOC PHEP
    BI CHAN
    DUOC PHEP
    DUOC PHEP
    DUOC PHEP

    Chủ đề

    🌐 Thiết kế WebThiết kế WebThiết kế Web: Triển khai — Tên miền, Hosting, SEOTất cả môn học

    Đang tải editor...