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] du - tổng dung lượng cây thư mục

    Lệnh du cộng dồn kích thước (theo block) của tất cả file trong một cây thư mục. Cho danh sách các file, mỗi file có kích thước s byte; mỗi file chiếm ceil(s/b) block, mỗi block b byte. Hãy tính tổng dung lượng (byte) thực sự chiếm trên đĩa của toàn bộ cây = tổng(ceil(s_i/b)) * b.

    Ví dụ: 3 file 1000, 5000, 4096 byte, b=4096 → block = 1 + 2 + 1 = 4 → tổng = 4 * 4096 = 16384 byte.

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

      Dòng đầu gồm hai số m (số file) và b (kích thước block). m dòng tiếp theo, mỗi dòng một số nguyên là kích thước file.

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

      0 ≤ m ≤ 10^5; 1 ≤ b ≤ 10^9; 0 ≤ s ≤ 10^15.

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

      Một số nguyên: tổng dung lượng (byte) chiếm trên đĩa.

    Ví dụ:

    Đầu vào:

    3 4096
    1000
    5000
    4096
    

    Đầu ra:

    16384

    Giải thích:

    Block: ceil(1000/4096)=1, ceil(5000/4096)=2, ceil(4096/4096)=1 → 4 block → 4*4096 = 16384 byte.

    Đang tải editor...