编程题
## 题目描述
给出若干个点的坐标,我们将 $y$ 轴正方向的射线视为起始位置,顺时针为正方向开始旋转,那么每个点都有自己对应的 $y$ 轴正方向“旋转角”,角度范围 $[0°,360°)$ ,请将这些点按旋转角从小到大排序,若存在某两个点旋转角相同,则离原点更近的排序在前,若离原点距离也相等,点的序号更小的排序在前。输出这些点排序后的序号。
## 输入描述
第一行,输入一个 $N$,代表一共有 $N$ 组测试用例。
对于每组测试用例:
- 第一行,输入一个 $M$,代表这组测试用例中点的个数;
- 接下来的 $M$ 行,依次输入这 $M$ 个点的横纵坐标。
## 输出描述
一共 $N$ 行,每行 $M$ 个编号,代表了这组点在按要求排序后的编号序列。
## 输入样例
```text
1
7
-1 1
0 1
1 1
-1 0
1 0
0 -1
1 -1
```
## 输出样例
```text
2 3 5 7 6 4 1
```
## 评测用例规模与约定
对于 100% 的测试用例 :$1 \leq N,M \leq 1000, -1000 \leq x,y \leq 1000$。