#2450. 牛了个牛(ox)

    ID: 2450 传统题 1000ms 256MiB 尝试: 1 已通过: 0 难度: 10 上传者: 标签>数组前缀和系列其他位运算数据结构2022初中组

牛了个牛(ox)

当前没有测试数据。

题目描述

曾经一款微信小程序“羊了个羊”大火,它凭借地狱难度让无数人沉迷其中。小 C 也是如此。

“羊了个羊”中有一个牌堆,每次选择顶端的牌到槽子里,如果槽子里出现 3张相同的牌就可以消去。

由于“羊了个羊”难度太大,且多数情况无解,于是小 C 想自己开发一款类似的游戏,叫做“牛了个牛”。

“牛了个牛”有一排牌,从 1 到 n,每张牌有个数字 aia_i。总共有 Q 轮游戏,每轮游戏有两个数 l、r。玩家需要将 l 到 r 的所有牌放入槽子中,如果槽子里有 2 张相同的牌即可消除,且槽子无容量限制。如果槽子里还剩卡牌,游戏失败,否则游戏胜利。注意一轮游戏结束后,无论是输是赢,n张牌会恢复原样。

请注意两款游戏的区别。

现在小 C 让你玩“牛了个牛”,而你聪明绝顶,请回答他 Q轮游戏的胜负情况。

输入格式

从文件 ox.in 中读取数据。

第一行两个整数 n、Q,表示牌数和游戏轮数;

第二行共 n个数,第 i个数为 aia_i,表示第 i 张牌上的数字;

接下来 Q 行,每行两个数 l 和 r,如题所述。

输出格式

输出到文件 ox.out 中。

共 Q 行,每行用 YesNo 表示该轮游戏的胜负(第一个字母大写,后面全为小写)。

样例

6 3
1 2 2 3 3 1
2 3
1 4
1 6
Yes
No
Yes
6 3
1 1 1 2 2 2
1 4
2 5
3 6
No
Yes
No

样例#3/4

选手目录下的 ox3/ox4.inox3/ox4.ans。 样例三满足:n,Q103n,Q≤10^3。 样例四满足:n,Q105n,Q≤10^5,且 aia_i 为 2 的幂。

数据范围

  • 对于 20% 的数据:n,Q10n,Q≤10。;
  • 对于 40%的数据:n,Q103n,Q≤10^3。;
  • 对于另外 50%的数据:n,Q105n,Q≤10^5
  • 其中有 40% 的数据满足:n,Q105n,Q≤10^5,且 aia_i 为 2 的幂,即 ai=2ka_i=2^k,其中 k 为非负整数;
  • 对于所有数据:1n,Q1061≤n,Q≤10^61ain1≤a_i≤n