一对不同的角为美丽角对当且仅当:gcd(θi,θj)=1gcd(\theta_{i},\theta_{j})=1gcd(θi,θj)=1 ,其中 θ\thetaθ 是角的角度值向下取整的值,例如 60.4°=6060.4°=6060.4°=60。
规定 gcd(0,θ)=θgcd(0,\theta)=\thetagcd(0,θ)=θ,且 180°180°180° 的角的顶点不能算作凸包的顶点。
给定 nnn 个点的坐标 (x,y)(x,y)(x,y) ,问最大凸包的美丽角对一共有多少对,重复的角对无需计算(即假如角对 i,ji,ji,j 已经被计算,那么无需再计算角对 j,ij,ij,i)。
最大凸包即含所有的点,并且所有的点都在凸多边形的边界上或内部的凸多边形。
第一行输入整数 nnn (3≤n≤105)(3 \le n \le 10^5)(3≤n≤105) ,表示点的数量;
后面 nnn 行中,每行输入两个整数 x,y(0≤x,y≤109)x,y(0 \le x,y \le 10^9)x,y(0≤x,y≤109),表示点的坐标,保证所有给出的点的坐标互不相同。
保证给出的所有的点一定可以构成至少一个凸包。
输出美丽角对的数量。
输入样例1
9 1 2 3 1 1 5 2 9 3 2 3 7 4 2 6 3 2 1
输出样例1
8
输入样例2
4 0 0 0 1 1 1 1 0
输出样例2
0
输入样例3
8 0 0 0 1 0 2 0 3 1 3 2 3 3 3 4 3
输出样例3
2
提示 样例 111 如下: