CF BUDDY
← Problems·

1552F · Telepanting

2200 · binary search, data structures, dp

Problem: An ant moves on the real line with constant speed of 11 unit per second. It starts at 00 and always moves to the right (so its position increases by 11 each second).

There are nn portals, the ii-th of which is located at position xix_i and teleports to position yi<xiy_i < x_i. Each portal can be either active or inactive. The initial state of the ii-th portal is determined by sis_i: if si=0s_i=0 then the ii-th portal is initially inactive, if si=1s_i=1 then the ii-th portal is initially active. When the ant travels through a portal (i.e., when its position coincides with the position of a portal):

  • if the portal is inactive, it becomes active (in this case the path of the ant is not affected);
  • if the portal is active, it becomes inactive and the ant is instantly teleported to the position yiy_i, where it keeps on moving as normal.

How long (from the instant it starts moving) does it take for the ant to reach the position xn+1x_n + 1? It can be shown that this happens in a finite amount of time. Since the answer may be very large, compute it modulo 998244353998\,244\,353.

Input Format: The first line contains the integer nn (1n21051\le n\le 2\cdot 10^5) — the number of portals.

The ii-th of the next nn lines contains three integers xix_i, yiy_i and sis_i (1yi<xi1091\le y_i < x_i\le 10^9, si{0,1}s_i\in\{0,1\}) — the position of the ii-th portal, the position where the ant is teleported when it travels through the ii-th portal (if it is active), and the initial state of the ii-th portal.

The positions of the portals are strictly increasing, that is x1<x2<<xnx_1<x_2<\cdots<x_n. It is guaranteed that the 2n2n integers x1,x2,,xn,y1,y2,,ynx_1, \, x_2, \, \dots, \, x_n, \, y_1, \, y_2, \, \dots, \, y_n are all distinct.

Output Format: Output the amount of time elapsed, in seconds, from the instant the ant starts moving to the instant it reaches the position xn+1x_n+1. Since the answer may be very large, output it modulo 998244353998\,244\,353.

Note: Explanation of the first sample: The ant moves as follows (a curvy arrow denotes a teleporting, a straight arrow denotes normal movement with speed 11 and the time spent during the movement is written above the arrow). 0665381232465274265490 \stackrel{6}{\longrightarrow} 6 \leadsto 5 \stackrel{3}{\longrightarrow} 8 \leadsto 1 \stackrel{2}{\longrightarrow} 3 \leadsto 2 \stackrel{4}{\longrightarrow} 6 \leadsto 5 \stackrel{2}{\longrightarrow} 7 \leadsto 4 \stackrel{2}{\longrightarrow} 6 \leadsto 5 \stackrel{4}{\longrightarrow} 9 Notice that the total time is 6+3+2+4+2+2+4=236+3+2+4+2+2+4=23.

Explanation of the second sample: The ant moves as follows (a curvy arrow denotes a teleporting, a straight arrow denotes normal movement with speed 11 and the time spent during the movement is written above the arrow). 0454971987454971987406874902480970864549719880 \stackrel{454971987}{\longrightarrow} 454971987 \leadsto 406874902 \stackrel{48097086}{\longrightarrow} 454971988 Notice that the total time is 454971987+48097086=503069073454971987+48097086=503069073.

Explanation of the third sample: Since all portals are initially off, the ant will not be teleported and will go straight from 00 to xn+1=899754846+1=899754847x_n+1=899754846+1=899754847.

Sample Cases

Case 1

Input

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

Output

23

Case 2

Input

1
454971987 406874902 1

Output

503069073

Case 3

Input

5
243385510 42245605 0
644426565 574769163 0
708622105 208990040 0
786625660 616437691 0
899754846 382774619 0

Output

899754847

Case 4

Input

5
200000000 100000000 1
600000000 400000000 0
800000000 300000000 0
900000000 700000000 1
1000000000 500000000 0

Output

3511295

Similar problems

00:00:00
Loading editor…
Welcome! I'm your coding tutor for this problem. Use the chips below to reveal stored hints or get AI feedback on your code. I'll guide you step by step — never giving away the solution.

Sign in to unlock AI tutor feedback