logo AlgoBeat OnlineJudge
登录 注册

#216898. [JLCPC 2026] 水晶城堡

内存限制:1024 MiB 时间限制:1000 ms 标准输入输出
题目类型:VJudge(洛谷) 评测方式:VJudge
上传者: 匿名

题目描述

是水晶城堡的守护者。城堡的长廊里镶嵌着一排 颗魔法水晶,第 颗水晶的颜色编号为 。长廊中相邻且同色的水晶会产生共鸣,形成一个色段——即极大的连续相同颜色段。例如颜色序列 个色段:

每天都有旅行者慕名前来,提出 个问题。每个问题指定一段区间 :如果把这段水晶取下来随机打乱重新排列(所有不同的颜色序列等概率出现),形成的色段数量的期望值是多少?

答案对 取模。即若答案为最简分数 ,输出 。可以证明在本题约束下 总是存在的。

输入格式

第一行有一个整数 ),表示数据组数。接下来 段,每段描述一组数据:

  • 第一行两个整数 )表示水晶数量和询问次数。
  • 第二行 个整数 )表示每颗水晶的颜色编号。
  • 接下来 行,每行两个整数 )表示询问区间的端点。

数据保证

输出格式

对于每组数据中的每个询问,输出一行一个整数,表示期望色段数量对 取模的结果。

样例

样例输入 1

1
4 2
1 1 2 2
1 2
1 4

样例输出 1

1
3

样例输入 2

1
10 5
3 5 3 3 6 4 8 2 3 5
6 9
1 8
8 10
4 9
7 7

样例输出 2

4
748683272
3
665496241
1

数据范围与提示

对于第一组样例:

第一个询问,取出的水晶颜色为 ,只有一种排列,色段数为

第二个询问,取出的水晶颜色为 种排列的色段数分别为 ,期望值为