A85660.Alice 的奇妙通信

提高+/省选-

通过率:0%

时间限制:1.00s

内存限制:1024MB

题目描述

在一片星际战场上有 nn 个阵地(编号 1∼n1\sim n)。初始时任意两阵地之间都没有通信通道。接下来按时间顺序发生 qq 次事件(时间从 11 到 qq 记为第 tt 个时刻),每次事件为以下三类之一:

  1. 1 x y —— 在阵地 xx 与 yy 之间新建一条无向通信通道。

允许同一对阵地之间存在多条通道;本操作会使该对阵地间的通道条数加一。

  1. 2 x y —— 摧毁一条连接阵地 xx 与 yy 的通信通道。

输入保证在执行时,xx 与 yy 之间至少存在一条通道;本操作会使其通道条数减一。

  1. 3 x y —— 询问此刻能否通过现有通道从阵地 xx 到达阵地 yy。

与常规输出不同:将所有回答为“连通”的询问,其发生时间分别记为 t1,t2,…t_1,t_2,\dots(即它们在输入中的行号/时刻)。将这些成功询问的时间做按位异或,记为

X=t1⊕t2⊕⋯ .X = t_1 \oplus t_2 \oplus \cdots .

最终只输出整数 XX。若没有任何一次询问连通,则输出 00。

输入格式

  • 第一行包含两个整数 n,qn,q —— 阵地数与事件数。

  • 接下来 qq 行,每行一个事件,格式如下之一:

    • 1 x y
    • 2 x y
    • 3 x y
      其中 1≤x,y≤n1\le x,y\le n。

输出格式

  • 输出一个整数:所有连通询问时间的按位异或值;若无连通询问则输出 00。

输入输出样例

  • 输入#1

    5 6
    1 1 2
    1 2 3
    3 1 3
    2 2 3
    3 1 3
    3 4 5

    输出#1

    3
  • 输入#2

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

    输出#2

    6

说明/提示

样例说明

样例一说明
共有 33 次询问,发生在时刻 3,5,63,5,6。

  • 时刻 33:11 与 33 连通(成功);
  • 时刻 55:不连通;
  • 时刻 66:不连通。
    成功询问时间异或:3=33=3。

样例二说明
三次询问发生在时刻 3,5,63,5,6,结果依次为:连通、连通、不连通。
成功询问时间集合为 3,5{3,5},异或 3⊕5=63\oplus 5=6,输出 66。

数据范围

  • 1≤n≤2×1051 \le n \le 2\times 10^5
  • 1≤q≤1061 \le q \le 10^6(单测上限示例,可按赛题实际设定)
  • 输入保证:执行 2 x y 时,该对点之间当前通道计数 ≥1\ge 1

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

首页