分苹果
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

好,相信大家都已经帮助小龙同学摘完苹果了吧。

现在小龙同学需要将摘下来的苹果分开。小龙会先把苹果都放在桌子上,然后拿两根棒子交叉放置。

请问桌上的苹果被分成的4份从少到多依次有几颗苹果。可能为0,也可能有多份有相同数量的苹果。

假设桌子很大很大,棒子很长很长,并且苹果不会在棒子上,棒子也不会压着苹果。

输入描述:

1行仅包含1个正整数n,表示桌面上散落有n颗苹果。

2行包含3个整数Ae,Be,Ce,表示其中一根棒子在桌子上对应的直线一般方程为Ae*x+Be*y+Ce=0

3行包含3个整数Ar,Br,Cr,表示另外一根棒子在桌子上对应的直线一般方程为Ar*x+Br*y+Cr=0

接下来n行,每行包含2个整数x,y,第i-3行表示第i颗苹果在桌子上对应的点坐标为(x,y)

输出描述:

输出包含14个整数表示答案。
示例1

输入

复制
4
0 1 0
1 0 0
1 1
1 -1
-1 1
-1 -1

输出

复制
1 1 1 1

备注:

对于 10\% 的数据,1 \leq n\leq 10-10^2 \leq Ae,Be,Ce,Ar,Br,Cr\leq 10^2-10^3 \leq x,y\leq 10^3

对于 40\% 的数据,1 \leq n\leq 10^4-10^4 \leq Ae,Be,Ce,Ar,Br,Cr\leq 10^4-10^5 \leq x,y\leq 10^5

对于 100\% 的数据,1 \leq n\leq 10^5-10^8 \leq Ae,Be,Ce,Ar,Br,Cr\leq 10^8-10^9 \leq x,y\leq 10^9(Ae|Be)!=0,(Ar|Br)!=0