测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A6145. 「USACO 2024.2 Platinum」Infinite Adventure

编程题 NOI/NOI+/CTSC
知识点

题目描述

**题目来自 [USACO 2024 February Contest, Platinum](http://usaco.org/index.php?page=feb24results) Problem 3. [Infinite Adventure](http://usaco.org/index.php?page=viewproblem2&cpid=1406)**

Bessie 正在计划一次在 $N$($1\le N\le 10^5$)个城市的大陆上的无尽冒险。每个城市 $i$ 都有一个传送门以及循环周期 $T_i$。所有 $T_i$ 均为 $2$ 的幂,且 $T_1+\ldots +T_N\le 10^5$。如果你在日期 $t$ 进入城市 $i$ 的传送门,那么你会立即从城市 $c_{i,t \bmod T_i}$ 的传送门出来。

Bessie 的旅行有 $Q$($1\le Q\le 5\cdot 10^4$)个计划,每个计划由一个元组 $(v,t,\Delta)$ 组成。在每个计划中,她将于日期 $t$ 从城市 $v$ 出发。然后,她将执行以下操作 $\Delta$ 次:她将进入当前城市的传送门,然后等待一天。对于她的每一个计划,她想要知道她最终会在哪个城市。

输入格式

输入的第一行包含两个空格分隔的整数:结点的数量 $N$,以及询问的数量 $Q$。

第二行包含 $N$ 个空格分隔的整数:$T_1,T_2,\ldots ,T_N$($1\le T_i$,$T_i$ 是 $2$ 的幂,且 $T_1+\ldots +T_N\le 10^5$)。

对于 $i=1,2,\ldots ,N$,第 $i+2$ 行包含 $T_i$ 个空格分隔的正整数,为 $c_{i,0},\ldots ,c_{i,T_{i-1}}$($1\le c_{i,t}\le N$)。

对于 $j=1,2,\ldots ,Q$,第 $j+N+2$ 行包含三个空格分隔的正整数 $v_j,t_j,\Delta_j$($1\le v_j\le N$,$1\le t_j\le 10^{18}$,且 $1\le \Delta_j\le 10^{18}$),表示第 $j$ 个询问。

输出格式

输出 $Q$ 行。第 $j$ 行包含第 $j$ 个询问的答案。

输入输出样例

输入 #1
5 4
1 2 1 2 8
2
3 4
4
2 3
5 5 5 5 5 1 5 5
2 4 3
3 3 6
5 3 2
5 3 7
输出 #1
2
2
5
4
输入 #2
5 5
1 2 1 2 8
2
3 4
4
2 3
5 5 5 5 5 1 5 5
2 4 3
3 2 6
5 3 2
5 3 7
5 3 1000000000000000000
输出 #2
2
3
5
4
2

说明/提示

- 测试点 3:$\Delta_j\le 2\cdot 10^2$。
- 测试点 4-5:$N,\sum T_j\le 2\cdot 10^3$。
- 测试点 6-8:$N,\sum T_j\le 10^4$。
- 测试点 9-18:没有额外限制。

供题:Brandon Wang
上一题 去做题 下一题