#P5397. [Ynoi2018] 天降之物

[Ynoi2018] 天降之物

背景

::::info[题目背景已折叠] 可曾做过这样的梦呢?

在我身边,有一个我从没见过的少女

我很喜欢她,她也很喜欢我

不过——

最后总是

在她被天空掳去的时候

迎来梦醒时分

人?

不对

不是人

没有人会...

长着翅膀

没有没有没有

哪里都没有

没有我可以回去的地方

我没有任何可以回去的地方!

哪里都没有...

我能回去的地方...无论哪里...无论哪里都没有...

我不想杀死任何人,不想伤害任何人!

为什么...为什么要制造出我...

不需要...我不需要这种力量...

幸福不足以形容我现在的心情

我该说什么才好呢

啊对了

我...爱你

我爱你...主人

神话中的伊卡洛斯,由于过于靠近太阳,用蜡粘住的羽毛融化后坠海而死

::::

题目描述

伊卡洛斯给了你一个长为 nn 的序列 aa。

你需要实现 mm 个操作,操作有两种:

  1. 把序列中所有值为 xx 的数的值变成 yy。
  2. 找出一个位置 ii 满足 ai=xa_i=x,找出一个位置 jj 满足 aj=ya_j=y,使得 ∣i−j∣|i-j| 最小,并输出 ∣i−j∣|i-j|。

输入格式

第一行两个整数 n,mn,m。

之后一行 nn 个整数,表示序列 aa。

之后 mm 行,每行三个数 opt,x,yopt,x,y。

如果 optopt 为 11,代表把序列中所有值为 xx 位置的值变成 yy。

如果 optopt 为 22,代表找出一个位置 ii 满足 ai=xa_i=x,找出一个位置 jj 满足 aj=ya_j=y,使得 ∣i−j∣|i-j| 最小,并输出 ∣i−j∣|i-j|,如果找不出这样的位置,输出 Ikaros。

本题强制在线,每次的 x,yx,y 需要 xor 上上次答案,如果输出 Ikaros,或者是第一次询问,则上次答案为 00。

共 5050 组数据,数据中保证 n=mn=m。

输出格式

对于每个 22 操作,输出一行一个整数表示答案。

如果无法找出满足题意的 i,ji,j,则输出 Ikaros。

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

Ikaros
1
1

提示

Idea:nzhtl1477,Solution:nzhtl1477,Code:nzhtl1477,Data:nzhtl1477( partially uploaded )

对于 100%100\% 的数据,所有数在 [1,105][1,10^5] 内,每次操作的值不超过 nn。