USACO 2019 - The Bucket List

Xem PDF



Dạng bài
Ngôn ngữ cho phép
Assembly, Awk, C, C#, C++, Clang, Cobol, D, Groovy, Haskell, JS, Java, Kotlin, Lua, Node JS, OCaml, ObjectiveC, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 800 (p) Thời gian: 4.0s Bộ nhớ: 512M Input: bàn phím Output: màn hình

Nông dân John đang cân nhắc thay đổi cách phân bổ xô để vắt sữa bò. Ông cho rằng cuối cùng việc này sẽ giúp mình chỉ cần dùng một số lượng nhỏ xô, nhưng ông không biết chính xác là bao nhiêu. Hãy giúp ông!

Nông dân John có \(N\) cô bò (\(1 \leq N \leq 100\)), được đánh số thuận tiện từ \(1 \ldots N\). Cô bò thứ \(i\) cần được vắt sữa từ thời điểm \(s_i\) đến thời điểm \(t_i\) và cần sử dụng \(b_i\) chiếc xô trong quá trình vắt sữa. Có thể nhiều cô bò được vắt sữa cùng một lúc; nếu vậy, chúng không thể dùng chung xô. Nói cách khác, một chiếc xô được cấp cho việc vắt sữa cô bò \(i\) không thể được dùng cho bất kỳ cô bò nào khác trong khoảng thời gian từ \(s_i\) đến \(t_i\). Tất nhiên, ngoài khoảng thời gian này, chiếc xô có thể được dùng cho những cô bò khác. Để đơn giản hóa công việc, FJ đã đảm bảo rằng tại bất kỳ thời điểm nào, nhiều nhất chỉ có một cô bò bắt đầu hoặc kết thúc việc vắt sữa (tức là tất cả các giá trị \(s_i\)\(t_i\) đều phân biệt).

FJ có một kho chứa các xô được đánh số liên tiếp bằng các nhãn 1, 2, 3, v.v. Theo chiến lược vắt sữa hiện tại, mỗi khi một cô bò nào đó (giả sử là cô bò \(i\)) bắt đầu được vắt sữa (tại thời điểm \(s_i\)), FJ chạy đến kho, lấy \(b_i\) chiếc xô đang khả dụng có nhãn nhỏ nhất và cấp chúng để vắt sữa cô bò \(i\).

Hãy xác định tổng số xô FJ cần giữ trong kho để có thể vắt sữa thành công cho tất cả các cô bò.

Dữ liệu vào

Dòng đầu tiên chứa \(N\). Mỗi dòng trong \(N\) dòng tiếp theo mô tả một cô bò, gồm các số \(s_i\), \(t_i\)\(b_i\) cách nhau bởi dấu cách. Cả \(s_i\)\(t_i\) đều là số nguyên trong khoảng \(1 \ldots 1000\), còn \(b_i\) là số nguyên trong khoảng \(1 \ldots 10\).

Dữ liệu ra

In ra một số nguyên duy nhất cho biết tổng số xô FJ cần.

Ví dụ

Ví dụ 1

Input
3
4 10 1
8 13 3
2 6 2
Output
4
Giải thích

Trong ví dụ này, FJ cần 4 chiếc xô: ông dùng xô 1 và 2 để vắt sữa cô bò 3 (bắt đầu tại thời điểm 2). Ông dùng xô 3 để vắt sữa cô bò 1 (bắt đầu tại thời điểm 4). Khi cô bò 2 đến vào thời điểm 8, xô 1 và 2 đã khả dụng trở lại nhưng xô 3 thì chưa, nên ông dùng các xô 1, 2 và 4.

Nguồn

Đề bài gốc: USACO 2018 December Contest, Bronze — The Bucket List

Tác giả: Brian Dean

Bình luận

Mới nhất
Tải bình luận...

Không có bình luận nào.

Kỳ thi: