QOJ.ac

QOJ

Limite de temps : 1.0 s Limite de mémoire : 256 MB Points totaux : 100 Hackable ✓

#15520. 精选之灯

Statistiques

在一条街道上分布着 $N$ 盏灯,它们的位置分别为 $X_i$,每盏灯的功率为 $P_i$。当第 $i$ 盏灯被打开时,它会照亮区间 $[X_i - P_i, X_i + P_i]$ 内的区域。初始时,有些灯是打开的,有些灯是关闭的。第 $i$ 盏灯的初始状态用 $T_i$ 表示:如果 $T_i = 1$,则该灯初始为打开状态;如果 $T_i = 0$,则该灯初始为关闭状态。灯的位置已按升序排序,即对于所有 $1 \le i < N$,满足 $X_i < X_{i+1}$。

对于每盏灯 $i$($1 \le i < N$),你需要确定一个值 $F(i)$,表示为了实现以下目标,你必须行走的最短总距离:

  • 所有在位置 $X_i$ 之前的灯都被视为已被摧毁且不存在。
  • 如果第 $i$ 盏灯初始时是关闭的,则将其打开。
  • 你从位置 $X_i$ 出发,想要步行到位置 $X_N$。在途中,你必须关闭除位置 $X_N$ 处的灯以外的所有灯。

如果你无法在确保除第 $N$ 盏灯外所有灯都被关闭的情况下到达位置 $X_N$,则 $F(i) = 0$。

你的任务是计算所有 $i$($1 \le i < N$)的 $F(i)$ 之和,模 $998244353$ 的结果。

注意:你只能在被灯光照亮的区域内行走。

输入格式

第一行包含一个整数 $T$($1 \le T \le 10^3$),表示测试用例的数量。

接下来,对于每个测试用例:

  • 第一行包含一个整数 $N$($1 \le N \le 10^6$)。
  • 接下来 $N$ 行,每行包含三个由空格隔开的整数 $X_i$,$P_i$ 和 $T_i$($1 \le X_i \le 10^{12}$,$1 \le P_i \le 10^{12}$,$T_i \in \{0, 1\}$)。
  • 保证对于所有 $1 \le i < N$,满足 $X_i < X_{i+1}$。

所有测试用例中 $N$ 的总和不超过 $10^6$。

输出格式

对于每个测试用例,输出一行,包含一个整数,即答案。

样例

输入样例 1

2
3
3 1 0
5 2 0
6 2 1
3
1 8 1
4 7 1
6 1 0

输出样例 1

8
0

说明

在第一个样例中:

图 1. 灯的初始状态。

现在让我们看看当你从第一盏灯出发时会发生什么。

图 2. 起点处的灯被打开。

图 3. 移动到第二盏灯并将其打开。

图 4. 返回第一盏灯并将其关闭。

图 5. 前往第三盏灯并关闭第二盏灯。

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.