AT_abc409_f.[ABC409F] Connecting Points

提高+/省选-

通过率:0%

AC君温馨提醒

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

题目描述

在二维平面上有一个初始为 NN 个顶点、00 条边的图 GG。顶点编号为 11 到 NN,顶点 ii 的坐标为 (xi,yi)(x_i,y_i)。

对于图 GG 中的顶点 uu 和 vv,定义它们之间的距离 d(u,v)d(u,v) 为曼哈顿距离:d(u,v)=∣xu−xv∣+∣yu−yv∣d(u,v)=|x_u-x_v|+|y_u-y_v|。

对于图 GG 的两个连通分量 AA 和 BB,设它们的顶点集合分别为 V(A)V(A) 和 V(B)V(B),则定义 AA 和 BB 之间的距离 d(A,B)d(A,B) 为:d(A,B)=min⁡{d(u,v)∣u∈V(A),v∈V(B)}d(A,B)=\min\lbrace d(u,v) \mid u \in V(A), v \in V(B) \rbrace。

请处理以下 QQ 个查询,查询分为三种类型:

  1. 1 a b:设当前图 GG 的顶点数为 nn,在坐标 (a,b)(a,b) 处新增顶点 n+1n+1,并将其加入图 GG。
  2. 2:设当前图 GG 的顶点数为 nn,连通分量数为 mm:
    • 若 m=1m=1,输出 -1。
    • 若 m≥2m \geq 2,找到距离最小的连通分量对,并将它们合并(即在这些连通分量之间添加边,使得所有距离等于最小值的顶点对相连),然后输出该最小距离值。
  3. 3 u v:若顶点 uu 和 vv 属于同一连通分量,输出 Yes;否则输出 No。

输入格式

输入通过标准输入给出,格式如下:

NN QQ
x1x_1 y1y_1
x2x_2 y2y_2
⋮\vdots
xNx_N yNy_N
query1\mathrm{query}_1
query2\mathrm{query}_2
⋮\vdots
queryQ\mathrm{query}_Q

每个查询为以下三种形式之一:

11 aa bb
22
33 uu vv

输出格式

按照题目要求输出每个查询的结果,每个结果占一行。

输入输出样例

  • 输入#1

    4 11
    3 4
    3 3
    7 3
    2 2
    3 1 2
    2
    3 1 2
    1 6 4
    2
    3 2 5
    2
    3 2 5
    2
    1 2 2
    2

    输出#1

    No
    1
    Yes
    2
    No
    3
    Yes
    -1
    0

说明/提示

约束条件

  • 2≤N≤15002 \leq N \leq 1500
  • 1≤Q≤15001 \leq Q \leq 1500
  • 0≤xi,yi≤1090 \leq x_i, y_i \leq 10^9
  • 对于类型 1 的查询,0≤a,b≤1090 \leq a, b \leq 10^9
  • 对于类型 3 的查询,设处理该查询前图 GG 的顶点数为 nn,则 1≤u<v≤n1 \leq u < v \leq n
  • 输入均为整数

样例解释 1

初始时,顶点 1,2,3,41,2,3,4 的坐标分别为 (3,4),(3,3),(7,3),(2,2)(3,4),(3,3),(7,3),(2,2)。

  • 第 1 个查询:顶点 11 和 22 不连通,输出 No。
  • 第 2 个查询:有 4 个连通分量({1},{2},{3},{4}\lbrace 1 \rbrace, \lbrace 2 \rbrace, \lbrace 3 \rbrace, \lbrace 4 \rbrace),最小距离为 11(顶点 11 和 22 之间),合并后输出 11。
  • 第 3 个查询:顶点 11 和 22 已连通,输出 Yes。
  • 第 4 个查询:新增顶点 55,坐标为 (6,4)(6,4)。
  • 第 5 个查询:最小距离为 22(顶点 22 和 44、顶点 33 和 55 之间),合并后输出 22。
  • 第 6 个查询:顶点 22 和 55 不连通,输出 No。
  • 第 7 个查询:最小距离为 33(顶点 11 和 55 之间),合并后输出 33。
  • 第 8 个查询:顶点 22 和 55 已连通,输出 Yes。
  • 第 9 个查询:所有顶点连通,输出 -1。
  • 第 10 个查询:新增顶点 66,坐标为 (2,2)(2,2)。
  • 第 11 个查询:最小距离为 00(顶点 44 和 66 之间),合并后输出 00。

翻译由 DeepSeek V3 完成

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

首页