猜数字
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
猜数字
问题描述
给定长度为 的数组 ,接下来有 次操作,每次操作是以下两种之一:
- 单点修改:将 修改为
val; - 区间查询:询问区间 上是否存在数 。
对于每个查询操作,输出 Yes 或 No 表示是否存在。
输入格式
第一行输入用空格隔开的正整数 ,分别表示数组 的长度和操作次数。
第二行输入 个整数,用空格隔开,表示数组 的内容。
第三行至第 行,每次输入以下两个中的一种:
1 i val:表示将 修改为val,保证 ;2 l r x:表示询问区间 中是否存在数 。
输出格式
对于每个第二种询问,如果询问的数存在,就输出 Yes,否则输出 No。
样例
输入
5 5
1 2 3 4 5
2 2 3 3
1 3 2
2 1 4 3
2 4 5 2
2 1 2 1
输出
Yes
No
No
Yes
样例解释
- 第一次询问 中是否有 ,结果是有的,输出
Yes; - 修改 为 ,原数组变为
1 2 2 4 5; - 第三次询问 中是否有 ,结果没有,输出
No; - 第四次询问 中是否有 ,结果没有,输出
No; - 第五次询问 中是否有 ,结果有,输出
Yes。
数据范围与约定
- 对于 20% 的数据:
- 对于 100% 的数据:$1 \le n, m \le 2 \times 10^5,\ 1 \le l \le r \le n,\ |a_i|, |val|, |x| \le 10^9$