题目名称 2861. 天使玩偶
输入输出 angel.in/out
难度等级 ★★★☆
时间限制 5000 ms (5 s)
内存限制 126 MiB
测试数据 20
题目来源 GravatarLGLJ 于2019-09-02加入
开放分组 全部用户
提交状态
分类标签
K-D Tree 分治 CDQ分治
分享题解
通过:7, 提交:12, 通过率:58.33%
GravatarEddy2008 100 11.248 s 48.93 MiB C++
GravatarZRQ 100 13.680 s 44.26 MiB C++
Gravatar乐未殇 100 15.667 s 38.19 MiB C++
Gravataryrtiop 100 17.346 s 78.27 MiB C++
Gravatarlihaoze 100 17.737 s 32.62 MiB C++
Gravatar00000 100 19.944 s 40.58 MiB C++
Gravatar乐未殇 100 29.327 s 40.14 MiB C++
Gravatarlihaoze 70 6.693 s 16.79 MiB C++
GravatarZRQ 70 17.804 s 27.48 MiB C++
Gravatarop_组撒头屯 40 65.119 s 11.10 MiB C++
关于 天使玩偶 的近10条评论(全部评论)
第10,14,18,的点超300000
是500000,
Gravatar乐未殇
2019-10-18 21:51 1楼

2861. 天使玩偶

★★★☆   输入文件:angel.in   输出文件:angel.out   简单对比
时间限制:5 s   内存限制:126 MiB

【题目描述】

Ayu 在七年前曾经收到过一个天使玩偶,当时她把它当作时间囊埋在了地下。

而七年后 的今天,Ayu 却忘了她把天使玩偶埋在了哪里,所以她决定仅凭一点模糊的记忆来寻找它。

我们把 Ayu 生活的小镇看作一个二维平面坐标系,而 Ayu 会不定时地记起可能在某个点 (x,y) 埋下了天使玩偶;或者 Ayu 会询问你,假如她在 (x,y) ,那么她离近的天使玩偶可能埋下的地方有多远。

因为 Ayu 只会沿着平行坐标轴的方向来行动,所以在这个问题里我们定义两个点之间的距离为dist(A,B)=|Ax-Bx|+|Ay-By|。其中 Ax 表示点 A的横坐标,其余类似。

【输入格式】

第一行包含两个整数n和m ,在刚开始时,Ayu 已经知道有n个点可能埋着天使玩偶, 接下来 Ayu 要进行m 次操作

接下来n行,每行两个非负整数 (xi,yi),表示初始n个点的坐标。

再接下来m 行,每行三个非负整数 t,xi,yi。

如果t=1 ,则表示 Ayu 又回忆起了一个可能埋着玩偶的点 (xi,yi) 。

如果t=2 ,则表示 Ayu 询问如果她在点 (xi,yi) ,那么在已经回忆出来的点里,离她近的那个点有多远

【输出格式】

对于每个t=2 的询问,在单独的一行内输出该询问的结果。

【样例输入】

2 3
1 1
2 3
2 1 2
1 3 3
2 4 2

【样例输出】

1
2

【提示】

n,m<=500 000

xi,yi<=1 000 000

【来源】

《算法竞赛进阶指南》