#codefestivalfinali. [code_festival_final_i]Shapes
[code_festival_final_i]Shapes
問題文
二次元平面上で, からのマンハッタン距離が ちょうど であるような点の集合から成る図形が 個ある. どの つの図形についても,それらを構成する点集合同士は共通部分を持たない.
このとき,「座標 から座標 に移動するときに通過しなければならない最小の点の数を答えよ」というクエリが 個与えられるので順番に答えよ. クエリで与えられる つの座標は,どの図形の点集合にも含まれないことが保障されている.
移動の際,任意の実数座標を移動することが出来るとして良い.
入力
入力は以下の形式で標準入力から与えられる.
: :
- 行目には,図形の数を表す整数 が与えられる.
- 行目から 行,各図形の情報を表す つの整数 $x_i,y_i,r_i (-10^8 ≦ x_i,y_i ≦ 10^8, 1 ≦ r_i ≦ 10^8)$ が与えられる.どの2つの図形についても,それらを構成する点集合同士は共通部分を持たない.
- 行目には,クエリの数を表す整数 が与えられる.
- 行目から 行,各クエリの2情報を表す つの整数 $x1_i,y1_i,x2_i,y2_i (-10^8 ≦ x1_i,y1_i,x2_i,y2_i ≦ 10^8)$ が与えられる.この2つの座標は,どの図形の点集合にも含まれないことが保障されている.
出力
1行目から 行,各クエリについての答えを与えられた順番に改行区切りで出力せよ.最後の行においても改行を行うこと.
入力例1
5
0 0 1
0 0 5
0 0 9
0 0 13
20 20 1
4
0 0 13 13
0 0 0 7
0 2 0 3
0 0 20 20
出力例1
4
2
0
5
入出力例1を表した図は以下の通りです.
入力例2
6
0 0 10
0 5 4
5 0 4
0 -5 4
-5 0 4
8 8 2
4
0 5 0 -5
6 0 10 10
-5 0 0 0
5 0 8 8
出力例2
2
2
1
3
入出力例2を表した図は以下の通りです.