USACO 2013 - Painting the Fence

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: 1100 (p) Thời gian: 4.0s Bộ nhớ: 512M Input: bàn phím Output: màn hình

Farmer John đã nghĩ ra một phương pháp tuyệt vời để sơn hàng rào dài cạnh chuồng của mình (hãy xem hàng rào như một trục số một chiều). Ông chỉ việc gắn một chiếc chổi sơn vào Bessie, con bò yêu thích của mình, rồi thong thả đi uống một ly nước lạnh trong khi Bessie đi tới đi lui dọc hàng rào và quét sơn lên mọi đoạn hàng rào mà cô đi qua.

Bessie bắt đầu tại vị trí \(0\) trên hàng rào và thực hiện một chuỗi \(N\) bước di chuyển (\(1 \le N \le 100\,000\)). Chẳng hạn, bước 10 L nghĩa là Bessie di chuyển \(10\) đơn vị sang trái, còn 15 R nghĩa là Bessie di chuyển \(15\) đơn vị sang phải. Với danh sách tất cả các bước di chuyển của Bessie, FJ muốn biết phần nào của hàng rào được phủ ít nhất \(K\) lớp sơn. Trong suốt hành trình, Bessie sẽ cách gốc tọa độ không quá \(1\,000\,000\,000\) đơn vị.

Dữ liệu vào

  • Dòng đầu tiên chứa hai số nguyên \(N\)\(K\), cách nhau bởi dấu cách.
  • \(N\) dòng tiếp theo, mỗi dòng mô tả một bước di chuyển của Bessie (chẳng hạn 15 L).

Dữ liệu ra

In ra tổng độ dài được phủ ít nhất \(K\) lớp sơn.

Ví dụ

Ví dụ 1

Input
6 2
2 R
6 L
1 R
8 L
1 R
2 R
Output
6
Giải thích

Bessie bắt đầu tại vị trí \(0\) và di chuyển \(2\) đơn vị sang phải, sau đó \(6\) đơn vị sang trái, \(1\) đơn vị sang phải, \(8\) đơn vị sang trái và cuối cùng \(3\) đơn vị sang phải. FJ muốn biết tổng độ dài được phủ ít nhất \(2\) lớp sơn.

\(6\) đơn vị độ dài được phủ ít nhất \(2\) lớp sơn, bao gồm các khoảng \([-11,-8]\), \([-4,-3]\)\([0,2]\).

Nguồn

USACO 2013 January Contest, Silver — Problem 1: Painting the Fence

Tác giả đề: Brian Dean, 2012.

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: