UOJ Logo Universal Online Judge

UOJ

#366. 【JOISC2017】Dragon 2

附件下载 统计

在一个平面直角坐标系上有 N 条龙,编号为 1N;龙有 M 支种族,编号为 1M

i 号龙 (1iN) 位于 (Ai,Bi),它属于种族 Ci。有可能有些种族已经没有龙了。

JOI 平原上有一条路,这条路可视为一条线段,端点坐标分别为 (D1,E1)(D2,E2)

上文中提到的所有坐标互不相同,且没有三点共线。

不同种族的龙之间会发生冲突。现给出 Q 种冲突,每种冲突用两个整数 Fj,Gj 来描述 (1jQ,1Fj,GjM),意为种族 Fj 敌视种族 Gj。此时,种族 Fj 的每一条龙会向种族 Gj 的每一条龙发射一个火球。火球轨迹是一条射线,打到对方的龙身上后,火球会穿过龙,沿着刚才的方向继续飞行。保证此后种族 Fj 不会再次敌视种族 Gj

火球会烧坏道路。对于给出的 Q 种冲突,求其中有多少个火球会烧坏道路。

输入格式

第一行有两个整数 N,M ,用空格分隔。

在接下来的 N 行中,第 i(1iN) 有三个整数 Ai,Bi,Ci

N+2 行有四个整数 D1,E1,D2,E2 ,用空格分隔。

N+3 行有一个整数 Q

在接下来的 Q 行中,第 j(1iQ) 有两个用空格分隔的整数 Fj,Gj

输出格式

输出共 Q 行,每行一个整数,表示在第 j 种冲突之中,有多少个火球会烧坏道路。

样例一

input

4 2
0 1 1
0 -1 1
1 2 2
-6 1 2
-2 0 2 0
2
1 2
2 1

output

1
2

explanation

在第一种冲突中:

  • 2 号龙向 3 号龙发射的火球会烧坏道路。

  • 1 号龙向 3 号龙、1 号龙向 4 号龙、2 号龙向 4 号龙发射的火球不会烧坏道路。

在第二种冲突中:

  • 3 号龙向 1 号龙、3 号龙向 2 号龙发射的火球会烧坏道路。

  • 4 号龙向 1 号龙、4 号龙向 2 号龙发射的火球不会烧坏道路。

样例二

input

3 2
-1000000000 -1 1
-999999998 -1 1
0 0 2
999999997 1 999999999 1
1
1 2

output

1

样例三

input

6 3
2 -1 1
1 0 1
0 3 2
2 4 2
5 4 3
3 9 3
0 0 3 3
6
1 2
1 3
2 1
2 3
3 1
3 2

output

4
2
4
0
2
1

数据范围与提示

Subtask 1 (15 points) N3000

Subtask 2 (45 points) Q100

Subtask 3 (40 points) 无额外限制。

对于所有数据,2MN3×104,1Q105 ,所有点的横坐标绝对值、纵坐标绝对值均 109 ,所有点互不相同,没有三点共线,

时间限制:3s

空间限制:256MB