比赛场次 | 689 |
---|---|
比赛名称 | 2025暑假集训第一场 |
比赛状态 | 已结束比赛成绩 |
开始时间 | 2025-06-25 08:00:00 |
结束时间 | 2025-06-25 13:00:00 |
开放分组 | 全部用户 |
注释介绍 | 难度对标noip,注意写部分分! |
题目名称 | Game of Stack |
---|---|
输入输出 | stack.in/out |
时间限制 | 1000 ms (1 s) |
内存限制 | 512 MiB |
测试点数 | 10 简单对比 |
用户 | 结果 | 时间 | 内存 | 得分 |
---|---|---|---|---|
|
AAAATTTTTT | 12.124 s | 11.35 MiB | 40 |
|
AAAATTTTTT | 12.289 s | 33.73 MiB | 40 |
|
AAAATTTTTT | 13.316 s | 46.92 MiB | 40 |
|
C | 0.000 s | 0.00 MiB | 0 |
|
RRRRRRRRRR | 0.026 s | 3.67 MiB | 0 |
|
RRRRRRRRRR | 0.048 s | 5.93 MiB | 0 |
|
WWWWTTTTTT | 12.155 s | 14.40 MiB | 0 |
|
WWWWTTTTTT | 12.234 s | 10.65 MiB | 0 |
|
WWWWTTTTTT | 12.526 s | 265.71 MiB | 0 |
因为大样例可能有点问题,这里下发一下编译好的std文件
运行方式:
打开cmd,定位到目标文件夹,直接输入:std.exe 输入文件 输出文件
虽然是原,但是我们不妨整个月计小剧场(
W 公司拥有空间折跃相关奇点,因此,W 公司员工在战斗中经常使用折跃速攻的战术。
在一次作战任务中,作为W公司三级员工的你制定了一个折跃作战计划。
计划将空间分成了 n 个节点,为了提高打击效率,他给每个节点预定了折跃通道,每个节点 i 有 ki 条折跃通道,记为 f(i, [1 ~ ki]),在第 j 次到达节点 i 后会经过通道到达节点 f(i, ki - j + 1),在作战中,员工将位于某一节点并开始折跃,不断经过折跃通道到达下一个节点,直到第 kx + 1 次到达点 x,此时 x 点没有通道,员工就结束了作战。
为了制定下一步计划,你需要快速得到每个节点开始折跃最终会在哪个节点结束。
形式化题意:
一个 n 个节点的图,每个节点 i 有一个大小为 ki 的栈。
我们重置每一个栈,然后从一个节点 x 开始,经过一个点时就取出栈顶元素 y 然后到达 y 节点直到到达一个点的栈为空
求出每个节点 i 开始最终到达的节点。
第一行一个整数 n。
之后 n 行,先为一个整数 ki,接着 ki 个数表示 fi。
注意:第一个数是栈底,最后一个数是栈顶
一行 i 个整数分别表示从 i 开始最后的位置。
3 3 1 2 2 3 3 1 2 3 1 2 1
1 2 2
5 5 1 2 4 3 4 6 1 2 5 3 3 4 6 1 1 4 4 4 2 9 3 1 4 2 3 5 5 1 2 4 4 4 1 3
1 1 1 1 1
对于前 40% 的数据:n <= 1e3,k 之和 <= 1e4
对于 100% 的数据:n <= 1e5,k 之和 <= 1e6
CodeForces
见题号