#P16257. [Noi2026赛前集训]escape逃跑

[Noi2026赛前集训]escape逃跑

题目描述

你被困在一座有 nn 个位置的建筑中。根据可靠消息,建筑中有两个保安,且他们位于不同的位置。为了成功逃跑,你必须确定这两个保安的位置。

你有 mm 个机器人。第 ii 个机器人可以探测区间 [li,ri][l_i,r_i] 中是否至少有一名保安,但探测需要时间。

你已经放出了所有机器人。在收到探测结果之前,你想知道:有多少种可能出现的结果,能够让你唯一确定两个保安的位置?

答案可能很大,请输出其对 998244353998244353 取模的结果。

输入格式

第一行输入两个正整数 n,mn,m

接下来 mm 行,每行输入两个正整数 li,ril_i,r_i,表示第 ii 个机器人探测的位置区间为 [li,ri][l_i,r_i]

输出格式

输出一行一个整数,表示答案。

样例 1

输入

4 2
1 2
2 3

输出

2

解释

两个机器人的探测结果共有以下四种组合:

  • 是 是:可能的保安位置有 (1,2),(1,3),(2,3),(2,4)(1,2),(1,3),(2,3),(2,4),无法唯一确定;
  • 是 否:可以唯一确定保安位于 (1,4)(1,4)
  • 否 是:可以唯一确定保安位于 (3,4)(3,4)
  • 否 否:这种结果不可能出现。

因此,共有 22 种结果能够唯一确定两个保安的位置。

数据范围

对于所有数据:

1n,m5×105,1\le n,m\le 5\times 10^5, 1lirin.1\le l_i\le r_i\le n.
子任务编号 分值 n,mn,m\le
1 10 14
2 500
3 2000
4 8000
5 30 10510^5
6 5×1055\times 10^5