USACO 2014 - Bessie Slows Down

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

Cô bò Bessie đang thi đấu môn trượt tuyết băng đồng tại Thế vận hội Moolympic mùa đông. Ban đầu, cô di chuyển với vận tốc \(1\) mét mỗi giây. Tuy nhiên, theo thời gian cô ngày càng mệt và bắt đầu chậm lại. Mỗi lần Bessie chậm lại, vận tốc của cô giảm: sau lần đầu tiên, cô di chuyển với vận tốc \(1/2\) mét mỗi giây; sau hai lần, cô di chuyển với vận tốc \(1/3\) mét mỗi giây; và cứ tiếp tục như vậy.

Bạn được cho biết thời điểm và vị trí Bessie chậm lại dưới dạng một chuỗi sự kiện. Một sự kiện như

T 17

có nghĩa là Bessie chậm lại tại một thời điểm cụ thể, ở đây là sau khi cuộc đua bắt đầu \(17\) giây. Một sự kiện như

D 10

có nghĩa là Bessie chậm lại tại một khoảng cách cụ thể tính từ điểm xuất phát, trong trường hợp này là \(10\) mét.

Cho danh sách \(N\) sự kiện như vậy (\(1 \le N \le 10\,000\)), hãy tính thời gian tính bằng giây để Bessie đi hết một kilômét. Làm tròn đáp án đến số giây nguyên gần nhất; \(0{,}5\) được làm tròn lên \(1\).

Dữ liệu vào

  • Dòng đầu tiên chứa \(N\).
  • \(N\) dòng tiếp theo, mỗi dòng có dạng T x hoặc D x, lần lượt biểu thị một sự kiện theo thời gian hoặc theo khoảng cách. Trong cả hai trường hợp, \(x\) là một số nguyên và sự kiện được đảm bảo xảy ra trước khi Bessie đi đủ tổng quãng đường một kilômét. Nhiều sự kiện có thể xảy ra đồng thời, khiến Bessie chậm đi đáng kể cùng một lúc. Các sự kiện có thể không được liệt kê theo thứ tự.

Ràng buộc

  • \(1 \le N \le 10\,000\).
  • Mỗi \(x\) là một số nguyên và sự kiện tương ứng xảy ra trước khi Bessie đi được một kilômét.

Dữ liệu ra

In ra tổng thời gian cần thiết để Bessie đi được \(1\) kilômét, làm tròn đến số giây nguyên gần nhất với trường hợp đúng nửa giây được làm tròn lên.

Ví dụ

Ví dụ 1

Input
2
T 30
D 10
Output
2970
Giải thích

Bessie chậm lại tại thời điểm \(t=30\) và tại khoảng cách \(d=10\).

Bessie đi \(10\) mét đầu tiên với vận tốc \(1\) mét/giây, mất \(10\) giây. Sau đó cô chậm lại còn \(1/2\) mét/giây, nên mất \(20\) giây để đi \(10\) mét tiếp theo. Khi ấy cô đạt mốc thời gian \(30\) giây và lại chậm đi, còn \(1/3\) mét/giây. Vì vậy, \(980\) mét còn lại mất \(980 \cdot 3=2940\) giây. Tổng thời gian là \(10+20+2940=2970\) giây.

Nguồn

USACO 2014 January Contest, Silver — Problem 1: Bessie Slows Down

Tác giả: Brian Dean, 2014.

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: