题目描述
众所周知,在上场 CCPC 中有一道数据结构的好题。
由于此题,本题出题人 jzz 错失奖牌,他追悔莫及,痛心疾首,悔不当初,悲愤交加,闭门思过,自惭形秽,悔得很冲动。
于是,出题人 jzz 向校内大佬 super曼 苦学数据结构知识,终于学成归来,甚至能出自己的数据结构题了。
给你一个长度为 n 的整数序列 A ,回答下列 q 个问题:
在第 i 个问题中,你得到了两个整数 Li 和 Ri 。令区间 [ Li, Ri] 内所有数之积为 S,即 S = ALi × ALi+1 × ⋯ × ARi。
请问 S 是一个平方数吗?(若存在一个整数 x,使得 y = x × x ,则 y 就是一个平方数。)
输入描述
第一行输入两个整数 n 和 q 。
第二行输入 n 个整数 A1,A2,⋯,An。
接下来 q 行,每行两个整数 Li 和 Ri。
输出描述
输出 q 行。如果在第 i 个问题中 S 是一个平方数,输出 Yes ,否则输出 No 。
样例输入
5 3 2 18 9 7 3 1 2 1 3 1 5
样例输出
Yes Yes No
数据范围
1 <= n , q <= 100000
1 <= Ai <= 2000
1 <= Li <= Ri <= n