Gửi bài giải


Điểm: 0,42 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 512M
Input: stdin
Output: stdout

Nguồn bài:
Croatian OI 2001
Dạng bài
Ngôn ngữ cho phép
C, C++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch

Có ~N~ điểm trên mặt phẳng với tọa độ là các số tự nhiên. Một đa giác lồi nhiều đỉnh nhất là một đa giác lồi có các đỉnh là gốc tọa độ và một số đỉnh trong các điểm đã cho, và có số đỉnh là nhiều nhất. Điểm gốc, nghĩa là điểm có tọa độ ~(0~, ~0)~, phải là một trong các đỉnh của đa giác lồi nhiều đỉnh nhất .

Viết chương trình xác định số đỉnh của đa giác này.

Một đa giác là lồi nếu mọi đoạn thẳng có đầu mút nằm trong đa giác đều nằm hoàn toàn trong đa giác đó.

Các cạnh liên tiếp của một đa giác không được phép song song với nhau.

Input

  • Dòng đầu tiên chứa số tự nhiên ~N~, ~2 \leq N \leq 100~, số điểm được cho.
  • Mỗi dòng trong số ~N~ dòng tiếp theo chứa ~2~ số tự nhiên ~X~, ~Y~, ~1 \leq X \leq 100~, ~1 \leq Y \leq 100~ cách nhau bởi khoảng trắng, cho biết tọa độ của một điểm. Các điểm đều phân biệt nhau.

Output

In ra một số nguyên duy nhất là số đỉnh của đa giác lồi nhiều đỉnh nhất .

Lưu ý: kết quả luôn không nhỏ hơn ~3~.

Sample Input 1

5
4 2
2 2
2 3
3 2
3 1

Sample Output 1

4

Sample Input 2

8
10 8
3 9
2 8
2 3
9 2
9 10
10 3
8 10

Sample Output 2

8

Sample Input 3

10
9 6
1 7
2 2
3 9
8 7
3 2
9 4
3 1
9 7
6 9

Sample Output 3

7

Bình luận

Hãy đọc nội quy trước khi bình luận.



  • -5
    trongtenlinhcbhk64  đã bình luận lúc 13, Tháng 5, 2023, 14:04

    Bình luận này đã bị ẩn vì có quá nhiều phản ứng tiêu cực. Nhấn để xem.