AT_joisc2017_l.ドラゴン 2 (Dragon 2)

NOI/NOI+/CTSC

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

#「JOISC 2017 Day 4」Dragon 2

题目译自 JOISC 2017 Day4 T3「ドラゴン 2(Dragon 2)」

在一个平面直角坐标系上有 NN 条龙,编号为 1…N1\dots N;龙有 MM 支种族,编号为 1…M1\ldots M。
ii 号龙 (1≤i≤N)(1\le i\le N) 位于 (Ai,Bi)(A_i, B_i),它属于种族 CiC_i。有可能有些种族已经没有龙了。
JOI 平原上有一条路,这条路可视为一条线段,端点坐标分别为 (D1,E1)(D_1, E_1) 和 (D2,E2)(D_2, E_2)。
上文中提到的所有坐标互不相同,且没有三点共线。
不同种族的龙之间会发生冲突。现给出 QQ 种冲突,每种冲突用两个整数 Fj,GjF_j, G_j 来描述 (1≤j≤Q,1≤Fj,Gj≤M)(1\le j\le Q, 1\le F_j, G_j\le M),意为种族 FjF_j 敌视种族 GjG_j。此时,种族 FjF_j 的每一条龙会向种族 GjG_j 的每一条龙发射一个火球。火球轨迹是一条射线,打到对方的龙身上后,火球会穿过龙,沿着刚才的方向继续飞行。保证此后种族 FjF_j 不会再次敌视种族 GjG_j。
火球会烧坏道路。对于给出的 QQ 种冲突,求其中有多少个火球会烧坏道路。

输入格式

第一行有两个整数 N,MN, M ,用空格分隔。
在接下来的 NN 行中,第 ii 行 (1≤i≤N)(1\le i\le N) 有三个整数 Ai,Bi,CiA_i, B_i, C_i 。
第 N+2N + 2 行有四个整数 D1,E1,D2,E2D_1, E_1, D_2, E_2 ,用空格分隔。
第 N+3N + 3 行有一个整数 QQ 。
在接下来的 QQ 行中,第 jj 行 (1≤i≤Q)(1\le i\le Q) 有两个用空格分隔的整数 Fj,GjF_j, G_j 。

输出格式

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

样例

样例输入 1

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

样例输出 1

1
2

样例解释 1

在第一种冲突中:

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

在第二种冲突中:

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

样例输入 2

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

样例输出 2

1

样例输入 3

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

样例输出 3

4
2
4
0
2
1

说明/提示

对于 15%15\% 的数据,N≤3000N\le 3000。
对于另外 45%45\% 的数据,Q≤100Q\le 100。
对于所有数据,2≤M≤N≤3×104,1≤Q≤5×1042\le M\le N\le 3\times 10^4, 1\le Q\le 5\times 10^4 ,所有点的横坐标绝对值、纵坐标绝对值均 ≤109\le 10^9 ,所有点互不相同,没有三点共线,

感谢 Planet6174 提供的翻译

输入解题思路,AI测评打分。不知道怎么写?

首页