id="a-graph-with-lines-and-dots-description-automatically-generatedđường-gấp-khúc-lizigzag.">Đường
gấp khúc (lizigzag.*)
Trên mặt phẳng tọa độ Oxy cho n điểm A1, A2, …, An có tọa độ nguyên dương. Người ta muốn vẽ một đường gấp khúc (theo dạng răng cưa) bắt đầu từ gốc tọa độ. Như vậy dãy điểm của đường gấp khúc này có dạng OB1B2…Bk (nối từ O đến B1, B1 đến B2, …, Bk-1 đến Bk) và phải thỏa mãn:
0 < xB1 < xB2 < … < xBk
0 < yB1 > yB2 < yB3 > …
Các điểm Bi (với i = 1, 2, …, k) phải thuộc tập điểm A1, A2, …, An.
Trong đó:
xB1, xB2, …, xBk lần lượt là hoành độ của B1, B2, …, Bk;
yB1, yB2, …, yBk lần lượt là tung độ của B1, B2, …, Bk;
Yêu cầu: Với tập điểm A1, A2, …, An. Hãy vẽ một đường gấp khúc (theo dạng răng cưa) thỏa mãn các điều kiện trên sao cho được nhiều điểm nhất (lưu ý rằng điểm được chọn phải là đỉnh của răng cưa).
Dữ liệu vào:
Dòng đầu chứa số nguyên dương n (n ≤ 104);
Trong n dòng sau, dòng thứ i chứa 2 số nguyên dương xi và yi tương ứng là hoành độ và tung tộ của điểm Ai (xi, yi ≤104 với i = 1, 2, …, n).
Kết quả: Ghi một số nguyên duy nhất là số lượng điểm nhiều nhất thoả mãn điều kiện đề bài.
Ví dụ:
Input | Output | |
5 3 4 6 2 2 2 1 3 5 1 | 5 |
Subtask:
Subtask 1: 60% số test n ≤ 20;
Subtask 2: 40% số test còn lại không có ràng buộc gì thêm.
Code tích cực |
---|
Trong 24h |
|
Trong 7 ngày |
|
Trong 30 ngày |
|
Thống kê |
---|
AC/Sub: 97887/180710 Pascal: 17121 C++: 130348 Python: 33199 Lượt xem/tải tests: 38905 |