USACO 2019 - Mountain View

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

Từ đồng cỏ của mình trong trang trại, cô bò Bessie có một tầm nhìn tuyệt đẹp ra dãy núi ở đường chân trời. Dãy núi có \(N\) ngọn núi (\(1 \leq N \leq 10^5\)). Nếu coi trường nhìn của Bessie là mặt phẳng \(xy\), mỗi ngọn núi là một tam giác có đáy nằm trên trục \(x\). Hai cạnh bên của ngọn núi đều tạo với đáy góc \(45\) độ, nên đỉnh núi tạo thành một góc vuông. Vì vậy, ngọn núi \(i\) được mô tả chính xác bởi vị trí đỉnh \((x_i, y_i)\). Không có hai ngọn núi nào có vị trí đỉnh hoàn toàn giống nhau.

Bessie đang cố đếm tất cả các ngọn núi, nhưng vì chúng đều có màu gần giống nhau, cô không thể nhìn thấy một ngọn núi nếu đỉnh của nó nằm trên biên hoặc bên trong hình tam giác của bất kỳ ngọn núi nào khác.

Hãy xác định số đỉnh phân biệt, và do đó là số ngọn núi, mà Bessie có thể nhìn thấy.

Dữ liệu vào

Dòng đầu tiên chứa \(N\). Mỗi dòng trong \(N\) dòng còn lại chứa \(x_i\) (\(0 \leq x_i \leq 10^9\)) và \(y_i\) (\(1 \leq y_i \leq 10^9\)), mô tả vị trí đỉnh của một ngọn núi.

Dữ liệu ra

In ra số ngọn núi mà Bessie có thể phân biệt được.

Ví dụ

Ví dụ 1

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

Trong ví dụ này, Bessie có thể nhìn thấy ngọn núi thứ nhất và ngọn núi cuối cùng. Ngọn núi thứ hai bị ngọn núi thứ nhất che khuất.

Nguồn

Đề bài gốc: USACO 2019 January Contest, Silver — Mountain View

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: