Universal Cup Judging System

Universal Cup

حد الوقت: 1 s حد الذاكرة: 1024 MB
الإحصائيات

Có $n$ điểm $P_1, P_2, \ldots, P_n$ trên mặt phẳng. VegiCat có $q$ truy vấn dành cho bạn. Mỗi truy vấn cho một điểm $P$.

problem_23596_6ec10fe5fc25c17116e0feb55e9f3d78.png

Với mỗi truy vấn, hãy dựng một đa giác đơn sử dụng một số điểm trong các điểm đã cho làm đỉnh. Đa giác phải chứa điểm $P$ nằm hẳn bên trong nó và có số lượng đỉnh ít nhất. Nếu không tồn tại đa giác như vậy, hãy in ra $-1$.

Đa giác đơn là một đường gấp khúc khép kín có ít nhất ba đỉnh phân biệt. Các cạnh kề nhau chỉ giao nhau tại đầu mút chung của chúng, và các cạnh không kề nhau thì không giao nhau.

problem_23596_a5610273068183d75d3104e4c9c1d828.png

Ví dụ về đa giác đơn và đa giác không đơn

Dữ liệu vào

Dòng đầu tiên chứa một số nguyên $T$ ($1 \le T \le 2 \cdot 10^4$), số lượng bộ dữ liệu. Mô tả của các bộ dữ liệu theo sau.

Dòng đầu tiên của mỗi bộ dữ liệu chứa hai số nguyên dương $n$ và $q$ ($3 \le n \le 10^5$, $1 \le q \le 10^5$), lần lượt biểu thị số lượng điểm đã cho và số lượng truy vấn.

Dòng thứ $i$ trong $n$ dòng tiếp theo chứa hai số nguyên $x_i$ và $y_i$ ($-10^9 \le x_i, y_i \le 10^9$), tọa độ của điểm $P_i$. Dữ liệu đảm bảo $n$ điểm này đôi một phân biệt.

Mỗi dòng trong $q$ dòng tiếp theo chứa hai số nguyên $x$ và $y$ ($-10^9 \le x, y \le 10^9$), tọa độ của điểm được truy vấn.

Dữ liệu đảm bảo tổng của $n$ trên tất cả các bộ dữ liệu không vượt quá $10^5$.

Dữ liệu đảm bảo tổng của $q$ trên tất cả các bộ dữ liệu không vượt quá $10^5$.

Dữ liệu ra

Với mỗi truy vấn, nếu không tồn tại đa giác thỏa mãn yêu cầu, hãy in ra một số nguyên $-1$ trên một dòng.

Ngược lại, hãy in ra một đa giác có số lượng đỉnh ít nhất. Trên dòng đầu tiên, in ra một số nguyên $m$, số lượng đỉnh.

Trên dòng thứ hai, in ra $m$ số nguyên $a_1, a_2, \ldots, a_m$ ($1 \le a_i \le n$), chỉ số của các đỉnh theo thứ tự. Đa giác là $P_{a_1} P_{a_2} \ldots P_{a_m}$. Các đỉnh có thể được in theo chiều kim đồng hồ hoặc ngược chiều kim đồng hồ.

Các chỉ số phải đôi một phân biệt, và đa giác in ra phải là đa giác đơn đồng thời chứa điểm được truy vấn nằm hẳn bên trong nó. Nếu có nhiều lời giải, hãy in ra bất kỳ lời giải nào.

Ví dụ

Dữ liệu vào 1

2
5 1
0 4
-3 0
-3 -3
3 -3
3 0
0 0
3 1
0 4
-3 0
3 0
0 0

Dữ liệu ra 1

3
4 1 2
-1

Ghi chú

Ở bộ dữ liệu đầu tiên, tam giác $P_4 P_1 P_2$ chứa điểm được truy vấn $P = (0, 0)$ nằm hẳn bên trong nó. Vì một đa giác có ít nhất ba đỉnh nên tam giác này có số lượng đỉnh ít nhất.

Ở bộ dữ liệu thứ hai, đa giác duy nhất có thể tạo thành là tam giác $P_1 P_2 P_3$. Điểm được truy vấn $P = (0, 0)$ nằm trên cạnh $P_2 P_3$, nên câu trả lời là $-1$.

problem_23596_b7e688351da0758f2f7d7d3948442e24.png

Minh họa cho các bộ dữ liệu ví dụ

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.