#P14736. [ICPC 2021 Seoul R] Find the House

[ICPC 2021 Seoul R] Find the House

题目描述

Younghee 目前正在一条一维道路上寻找她的朋友 Jisun 的家。为了知道 Jisun 家的确切位置,Younghee 向 Jisun 发送了一条消息,告知她自己当前的位置(假设所有位置都用整数表示)。几分钟后,Younghee 收到了 Jisun 的回复,是一个包含 nn 个三元组的列表,并附有如下说明:

  • 对于列表中的每个三元组 (i,j,k)(i, j, k),ii 是一个表示当前位置的整数,jj 表示从 ii 出发的移动方向,用 LL(左)或 RR(右)表示,kk 是一个正整数,表示从 ii 出发移动的距离。
  • 对于列表中任意两个三元组 (i,j,k)(i, j, k) 和 (i′,j′,k′)(i', j', k'),ii 和 i′i' 是不同的。
  • 如果你当前在位置 ii,列表中总是存在一个三元组 (i,j,k)(i, j, k)(除非列表中的所有三元组都已被引用过)。在这种情况下,引用该三元组 (i,j,k)(i, j, k) 并移动到 i−ki - k(如果 j=Lj = L)或 i+ki + k(如果 j=Rj = R)。
  • 列表中的每个三元组恰好被引用一次。
  • 引用完列表中所有三元组后的位置,就是 Jisun 家的位置。

例如,假设 Younghee 当前在位置 00,并有一个包含四个三元组的列表:(3,R,4)(3, R, 4)、(0,L,2)(0, L, 2)、(7,L,5)(7, L, 5) 和 (−2,R,5)(-2, R, 5)。那么 Younghee 首先引用三元组 (0,L,2)(0, L, 2),并移动到位置 0−2=−20 - 2 = -2。之后,Younghee 按顺序引用三元组 (−2,R,5)(-2, R, 5)、(3,R,4)(3, R, 4) 和 (7,L,5)(7, L, 5),并移动到位置 22,这就是 Jisun 家的位置。给定 nn、Younghee 的当前位置以及一个包含 nn 个三元组的列表,请编写一个程序来找到 Jisun 家的位置。

输入格式

你的程序需要从标准输入读取数据。输入的第一行包含一个整数 nn (1≤n≤10,0001 \leq n \leq 10,000),其中 nn 是列表中三元组的数量。接下来的 nn 行中,给出了 nn 个三元组,每个三元组由三个值 ii、jj 和 kk 表示,包括两个整数 ii 和 kk 以及一个字符 jj (−1,000,000≤i≤1,000,000-1,000,000 \leq i \leq 1,000,000, j∈{L,R}j \in \{L, R\}, 1≤k≤2,000,0001 \leq k \leq 2,000,000)。在 nn 行三元组之后,有一行包含一个整数,表示 Younghee 的当前位置(在 −1,000,000-1,000,000 到 1,000,0001,000,000 之间)。

输出格式

你的程序需要向标准输出写入数据。输出恰好一行。该行应包含 Jisun 家的位置。

4
3 R 4
0 L 2
7 L 5
-2 R 5
0
2
5
3 L 3
-1 R 11
5 L 6
1 R 4
10 L 7
1
0

提示

翻译由 DeepSeek V3 完成