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$.
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.
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$.
Minh họa cho các bộ dữ liệu ví dụ