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] Lập lịch đĩa FCFS - tổng di chuyển đầu đọc

    Mô phỏng lập lịch đĩa FCFS (First-Come First-Served) và tính tổng quãng đường di chuyển của đầu đọc.

    Đầu đọc xuất phát ở vị trí start. Phục vụ các yêu cầu theo đúng thứ tự cho trước. Mỗi lần di chuyển từ vị trí hiện tại đến yêu cầu kế tiếp tốn |đích − hiện tại| đơn vị.

    Thuật toán: cur = start, total = 0; với mỗi yêu cầu r theo thứ tự: total += |r - cur|, cur = r. In total.

    Ví dụ: start=50, yêu cầu 82 170 43 140. Di chuyển = |82-50|+|170-82|+|43-170|+|140-43| = 32+88+127+97 = 344.

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

      Dòng 1: n (số yêu cầu) và start (vị trí đầu đọc). Dòng 2: n số — các yêu cầu theo thứ tự.

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

      1 ≤ n ≤ 100000; 0 ≤ start, yêu cầu ≤ 1000000.

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

      Một số nguyên: tổng quãng đường di chuyển.

    Ví dụ:

    Đầu vào:

    4 50
    82 170 43 140
    

    Đầu ra:

    344

    Giải thích:

    Bắt đầu 50. →82 (|82-50|=32). →170 (88). →43 (127). →140 (97). Tổng = 32+88+127+97 = 344.

    Đang tải editor...