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] Khớp lịch cron với ngày dương lịch cụ thể

    Khớp với ngày dương lịch

    Cho lịch cron 5 trường và một ngày dương lịch năm tháng ngày (lấy từ input). Hãy xác định thứ trong tuần của ngày đó bằng thư viện chuẩn, rồi kiểm tra ngày này có khớp các trường ngày / tháng / thứ hay không.

    Lưu ý quy tắc cron: nếu cả trường ngày (dom) và trường thứ (dow) đều không phải *, thì ngày khớp khi dom HOẶC dow khớp (toán tử OR). Nếu một trong hai là *, áp dụng AND như bình thường.

    Trường thứ dùng 0..7 (0,7 = Chủ nhật). datetime cho weekday() với Mon=0..Sun=6; cần đổi sang cron (Sun=0..Sat=6).

    In YES nếu ngày khớp (về mặt ngày/tháng/thứ), ngược lại NO.

    Ví dụ

    Input:

    0 0 13 * 5
    2026 2 13
    

    Output:

    YES
    

    13/2/2026 là thứ Sáu. dom=13 khớp ngày 13; OR → YES.

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

      Dòng 1: 5 trường cron. Dòng 2: năm tháng ngày.

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

      Ngày dương lịch hợp lệ; các trường cron hợp lệ.

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

      YES nếu khớp ngày/tháng/thứ, ngược lại NO.

    Ví dụ:

    Đầu vào:

    0 0 13 * 5
    2026 2 13
    

    Đầu ra:

    YES

    Giải thích:

    13/2/2026 là thứ Sáu; dom OR dow đều khớp.

    Đang tải editor...