妄想集合
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

为了想要实现的现实

现在就去买回未来吧

妄想症也好 欲望也好

来吧,向着“痛苦”的另一边

开始有  个可重集合,开始时每一个集合中都有一个数,有  个操作。

  • :往编号在  的每个集合中加入一个数 
  • :询问能否从  的集合中取出三个数使得他们能作为边长组成一个三角形(即最小两个和要大于最大的)。

输入描述:

第一行两个整数  
接下来一行  个数表示每个集合中初始的一个数  。
接下来  行每行表示一个操作。
保证操作加入的数字和最开始的数字均为正整数且不超过  且询问区间合法  。

输出描述:

对于每个 Ask 操作,输出一行表示答案,能则输出 YES ,否则输出 NO。
示例1

输入

复制
5 5
1 10 2 6 2
Ask 1 3
Quant 1 2 5
Ask 1 3
Quant 1 4 5
Ask 4 5

输出

复制
NO
YES
YES