#JX2021. 强哥历险记——连接奶牛

强哥历险记——连接奶牛

题目描述

每天 强哥 都会巡视他的农场并检查他 NN1N101 ≤ N ≤ 10 )头奶牛的健康状况。

每头奶牛的位置可以用二维平面上的一个点来表示, 强哥 从原点 (0,0)(0, 0) 出发。为了让他的路线更加有趣, 强哥 决定他只朝着与坐标轴平行的方向移动 —— 也就是说,只朝东南西北四个方向移动。此外,他只有到达一只奶牛的位置后才会变更行走的方向(只要他乐意,他也可以直接路过一只奶牛而不改变方向)。当他改变方向时,可以进行 9090 度或者 180180 度的旋转。 强哥 在看完他所有的奶牛之后需要回到起点。

请计算出 强哥 有多少种不同的路线可以查看每一只奶牛,并且在每只牛的位置刚好改变一次方向。他可以路过一只奶牛却不改变方向任意次。同样一个路线图,正着走和反着走算作两条不同的路线。

输入格式

11 行:一个整数 NN

21+N2 \dots 1 + N 行:第 i+1i + 1 行包含第 ii 个点的用空格隔开的坐标 xxyy(取值范围在 [1000,1000][-1000, 1000] )。

输出格式

11 行: 强哥 可以选择的不同路径的数量(如果没有合法的路径,这个值可以是 0 )。

4
0 1
2 1
2 0
2 -5
2

提示

样例解释

44 只奶牛,在位置 (0,1)(0, 1)(2,1)(2, 1)(2,0)(2, 0)(2,5)(2, -5)

有两条不同的路线: 强哥 可以按照 1-2-4-3 或者 3-4-2-1 的顺序查看奶牛,然后回到起点。