USACO 2018 - Hoofball

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

Để chuẩn bị cho giải đấu hoofball sắp tới, bác nông dân John đang huấn luyện \(N\) cô bò của mình (được đánh số thuận tiện từ \(1 \dots N\), với \(1 \leq N \leq 100\)) cách chuyền bóng. Tất cả các cô bò đứng dọc theo một đường thẳng rất dài ở một phía của chuồng, trong đó cô bò \(i\) đứng cách chuồng \(x_i\) đơn vị (\(1 \leq x_i \leq 1000\)). Mỗi cô bò đứng tại một vị trí khác nhau.

Khi bắt đầu buổi tập, bác nông dân John sẽ chuyền một số quả bóng cho những cô bò khác nhau. Khi cô bò \(i\) nhận được bóng, dù từ bác nông dân John hay từ một cô bò khác, cô sẽ chuyền bóng cho cô bò gần mình nhất (nếu có nhiều cô bò cùng cách cô một khoảng bằng nhau, cô sẽ chuyền bóng cho cô bò nằm xa nhất về bên trái trong số đó). Để tất cả các cô bò đều được luyện chuyền bóng ít nhất một chút, bác nông dân John muốn bảo đảm rằng mỗi cô bò sẽ cầm bóng ít nhất một lần. Hãy giúp ông tìm số quả bóng ít nhất cần phát lúc đầu để điều này có thể xảy ra, giả sử ông trao bóng cho một tập hợp bò ban đầu thích hợp.

Dữ liệu vào

Dòng đầu tiên chứa \(N\). Dòng thứ hai chứa \(N\) số nguyên cách nhau bởi dấu cách, trong đó số nguyên thứ \(i\)\(x_i\).

Dữ liệu ra

In ra số quả bóng ít nhất mà bác nông dân John phải chuyền ban đầu cho đàn bò để mỗi cô bò đều có thể cầm bóng ít nhất một lần.

Ví dụ

Ví dụ 1

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

Trong ví dụ trên, bác nông dân John nên chuyền một quả bóng cho cô bò tại \(x=1\) và một quả bóng cho cô bò tại \(x=11\). Cô bò tại \(x=1\) sẽ chuyền bóng cho cô bò tại \(x=3\), sau đó quả bóng này sẽ qua lại giữa cô bò tại \(x=3\) và cô bò tại \(x=4\). Cô bò tại \(x=11\) sẽ chuyền bóng cho cô bò tại \(x=7\); cô bò này sẽ chuyền bóng cho cô bò tại \(x=4\), sau đó quả bóng cũng sẽ luân chuyển giữa cô bò tại \(x=3\) và cô bò tại \(x=4\). Nhờ vậy, mỗi cô bò đều sẽ được chuyền bóng ít nhất một lần (có thể bởi bác nông dân John hoặc bởi một cô bò khác).

Có thể thấy rằng không tồn tại một cô bò duy nhất mà nếu bác nông dân John chuyền bóng cho cô ấy lúc đầu thì cuối cùng mọi cô bò đều sẽ được chuyền bóng.

Nguồn

USACO 2018 February Contest, Bronze — Hoofball

Tác giả bài toán: Dhruv Rohatgi.

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: