USACO 2013 - Poker Hands

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

Bessie và những người bạn đang chơi một phiên bản poker đặc biệt với một bộ bài có \(N\) (\(1 \le N \le 100\,000\)) hạng khác nhau, được đánh số thuận tiện từ \(1\) đến \(N\) (một bộ bài thông thường có \(N = 13\)). Trong trò chơi này, chỉ có một loại bộ bài mà những con bò có thể đánh: người chơi có thể chọn một lá bài mang số \(i\) và một lá bài mang số \(j\), rồi đánh một lá thuộc mỗi giá trị từ \(i\) đến \(j\). Loại bộ bài này được gọi là một "sảnh".

Trên tay Bessie hiện có \(a_i\) lá bài hạng \(i\) (\(0 \le a_i \le 100000\)). Hãy giúp cô tìm số sảnh ít nhất phải đánh để loại bỏ tất cả các lá bài của mình.

Dữ liệu vào

Dòng đầu tiên chứa số nguyên \(N\).

Dòng thứ \(i+1\) trong \(N\) dòng tiếp theo chứa giá trị \(a_i\).

Dữ liệu ra

In ra số sảnh ít nhất Bessie phải đánh để loại bỏ tất cả các lá bài của mình.

Ví dụ

Ví dụ 1

Input
5
2
4
1
2
3
Output
6
Giải thích

Bessie có thể đánh một sảnh từ 1 đến 5, một sảnh từ 1 đến 2, một sảnh từ 4 đến 5, hai sảnh từ 2 đến 2 và một sảnh từ 5 đến 5; tổng cộng cần 6 lượt để loại bỏ tất cả các lá bài của cô.

Nguồn

USACO 2013 March Contest, Silver — Problem 1: Poker Hands

Tác giả đề: Albert Gu, 2011.

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: