DHBB 2017 - CBH - 10 - Đa giác
Xem dạng PDF
Gửi bài giải
Điểm:
45,00 (OI)
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
1G
Input:
stdin
Output:
stdout
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Output Only, Pascal, PyPy, Python, Scratch, TEXT
Trong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài
Cho một đa giác lồi ~A~ gồm ~n~ đỉnh. Đa giác ~B~ là đa giác không tự cắt bất kì. Các đỉnh của cả hai đa giác được cho theo chiều kim đồng hồ. Mỗi đa giác không có ba điểm liên tiếp thẳng hàng.
Yêu cầu: Kiểm tra đa giác ~B~ có thực sự nằm trong đa giác ~A~ hay không? Tức là, mọi điểm của đa giác ~B~ nằm trong đa giác ~A~ và không có điểm nào của đa giác ~B~ nằm trên các cạnh và các đỉnh của đa giác ~A~.
Input
- Dòng đầu chứa số ~t~ là số bộ test.
- ~t~ nhóm dòng sau, mỗi nhóm là một bộ test, trong đó:
- Dòng đầu tiên chứa số nguyên ~n~ (~3 \le n \le 10^5~) là số đỉnh của ~A~.
- ~n~ dòng tiếp theo mỗi dòng lưu tọa độ một đỉnh của đa giác ~A~: ~x_i, y_i~ (~|x_i|, |y_i| \le 10^9~).
- Dòng tiếp theo chứa số ~m~ là số đỉnh của đa giác ~B~ (~3 \le m \le 2 \cdot 10^4~).
- ~m~ dòng tiếp theo mỗi dòng lưu tọa độ các đỉnh của đa giác ~B~: ~x_j, y_j~ (~|x_j|, |y_j| \le 10^9~).
Output
- Ghi trên ~t~ hàng, mỗi hàng in kết quả của test tương ứng: “YES” nếu ~B~ thực sự nằm trong ~A~ và “NO” trong trường hợp còn lại.
Sample Input 1
1
6
-2 1
0 3
3 3
4 1
3 -2
2 -2
4
0 1
2 2
3 1
1 0
Sample Output 1
YES
Bình luận