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] Phân loại con trỏ truy cập block logic

    Cho block logic số L (đánh số từ 0) của một file. Inode có nd con trỏ direct, một single, một double, một triple indirect; mỗi block chỉ mục chứa k con trỏ.

    Xác định vùng truy cập:

    • L < nd → in DIRECT.
    • nd ≤ L < nd + k → in SINGLE.
    • nd + k ≤ L < nd + k + k^2 → in DOUBLE.
    • nd + k + k^2 ≤ L < nd + k + k^2 + k^3 → in TRIPLE.
    • Vượt quá → in OUT_OF_RANGE.

    Ví dụ: L=12, nd=12, k=1024 → 12 ≥ 12 và < 12+1024 → SINGLE.

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

      Một dòng gồm ba số nguyên L, nd, k.

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

      0 ≤ L ≤ 10^18; 0 ≤ nd ≤ 64; 1 ≤ k ≤ 10^6.

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

      Một chuỗi: DIRECT, SINGLE, DOUBLE, TRIPLE hoặc OUT_OF_RANGE.

    Ví dụ:

    Đầu vào:

    12 12 1024
    

    Đầu ra:

    SINGLE

    Giải thích:

    L=12 không < nd=12 nhưng < 12+1024 → vùng SINGLE indirect.

    Đang tải editor...