#ABC470F. 古戈尔交换 / Googol Swaps

古戈尔交换 / Googol Swaps

题目描述

给定一个由小写英文字母组成的长度为 NN 的字符串 SS。 对 SS 恰好进行 1010010^{100} 次以下操作后,求 SS 可能变成的不同字符串的个数,答案对 998244353998244353 取模。

  • 选择一个 11 以上 MM 以下的整数 ii,交换 SS 的第 AiA_i 个字符和第 BiB_i 个字符。

输入

输入按以下格式从标准输入读入:

  • NN MM
  • SS
  • A1A_1 B1B_1
  • \vdots
  • AMA_M BMB_M

输出

输出答案。

数据范围

  • NNMM 为整数。
  • 2N2×1052 \leq N \leq 2 \times 10^5
  • 1M2×1051 \leq M \leq 2 \times 10^5
  • SS 是由小写英文字母组成的长度为 NN 的字符串。
  • AiA_iBiB_i 为整数。
  • 1Ai<BiN1 \leq A_i < B_i \leq N
  • (A1,B1),,(AM,BM)(A_1, B_1), \dots, (A_M, B_M) 两两不同。
5 3
miria
1 3
2 5
4 5
6

操作结束后 SS 可能变成以下六个字符串:

  • marii
  • mirai
  • miria
  • ramii
  • rimai
  • rimia
6 6
yiwayi
1 2
1 3
2 3
4 5
4 6
5 6
18
29 25
hexakosioihexekontahexaphobia
1 2
1 4
1 6
1 8
1 15
1 16
2 3
3 4
4 20
5 6
5 8
8 22
8 23
9 15
9 17
11 21
12 20
13 19
14 29
15 28
16 17
18 19
18 21
19 20
20 21
346192062

子任务设置

  • 子任务 1(150 分):N,M2000N,M \le 2000
  • 子任务 2(150 分):N,M5×104N,M \le 5 \times 10^4
  • 子任务 3(200 分):无特殊限制。