测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A2120. 幸福的路

编程题 普及+/提高

题目描述

每天,John 都要为了农场里 $n$($1 \leq n\leq 10$) 头牛的健康和幸福四处奔波。

每头牛的位置可以描述为一个二维坐标,John 从坐标原点 $(0,0)$ 出发。为了使路径更有趣,John 决定只沿着平行于坐标轴的方向行走,这样只能沿着东西南北方向运动。而且只有到达某头牛的坐标后 John 才会改变行走的方向(当然,如果有必要,John 也会穿过某头牛的坐标而不改变行走的方向。)

如果 John 改变行走的方向,他会原地转 $90^\circ$ 或者 $180^\circ$。John 的路径必须保证检查完所有牛后返回原点。

John 可以穿过某头牛的坐标而不改变方向任意次,请计算出有多少条路径满足 John 能检查完 $n$ 头牛,在每头牛的坐标处恰好改变一次方向。同一条路径从不同方向经过要计算两次。

输入格式

第一行,整数 $n$。

第二行到第 $n+1$ 行,第 $i+1$ 行是两个用空格隔开的整数 $x$ 和 $y$,表示第 $i$ 头牛的坐标($-1000 \leq x,y \leq 1000$)。

输出格式

一行一个整数,表示路径的量。如果没有满足要求则输出 $0$。

输入输出样例

输入 #1
4
0 1
2 1
2 0
2 -5
输出 #1
2

说明/提示

一行一个整数,表示路径的量。如果没有满足要求则输出 $0$。
上一题 去做题 下一题