L2-040 哲哲打游戏(Python3)
哲哲是一位硬核游戏玩家。最近一款名叫《达诺达诺》的新游戏刚刚上市,哲哲自然要快速攻略游戏,守护硬核游戏玩家的一切!
为简化模型,我们不妨假设游戏有 N 个剧情点,通过游戏里不同的操作或选择可以从某个剧情点去往另外一个剧情点。此外,游戏还设置了一些存档,在某个剧情点可以将玩家的游戏进度保存在一个档位上,读取存档后可以回到剧情点,重新进行操作或者选择,到达不同的剧情点。
为了追踪硬核游戏玩家哲哲的攻略进度,你打算写一个程序来完成这个工作。假设你已经知道了游戏的全部剧情点和流程,以及哲哲的游戏操作,请你输出哲哲的游戏进度。
输入格式:
输入第一行是两个正整数 N 和 M (1≤N,M≤105),表示总共有 N 个剧情点,哲哲有 M 个游戏操作。
接下来的 N 行,每行对应一个剧情点的发展设定。第 i 行的第一个数字是 Ki,表示剧情点 i 通过一些操作或选择能去往下面 Ki 个剧情点;接下来有 Ki 个数字,第 k 个数字表示做第 k 个操作或选择可以去往的剧情点编号。
最后有 M 行,每行第一个数字是 0、1 或 2,分别表示:
- 0 表示哲哲做出了某个操作或选择,后面紧接着一个数字 j,表示哲哲在当前剧情点做出了第 j 个选择。我们保证哲哲的选择永远是合法的。
- 1 表示哲哲进行了一次存档,后面紧接着是一个数字 j,表示存档放在了第 j 个档位上。
- 2 表示哲哲进行了一次读取存档的操作,后面紧接着是一个数字 j,表示读取了放在第 j 个位置的存档。
约定:所有操作或选择以及剧情点编号都从 1 号开始。存档的档位不超过 100 个,编号也从 1 开始。游戏默认从 1 号剧情点开始。总的选项数(即 ∑Ki)不超过 106。
输出格式:
对于每个 1(即存档)操作,在一行中输出存档的剧情点编号。
最后一行输出哲哲最后到达的剧情点编号。
输入样例:
10 11
3 2 3 4
1 6
3 4 7 5
1 3
1 9
2 3 5
3 1 8 5
1 9
2 8 10
0
1 1
0 3
0 1
1 2
0 2
0 2
2 2
0 3
0 1
1 1
0 2
输出样例:
1
3
9
10
样例解释:
简单给出样例中经过的剧情点顺序:
1 -> 4 -> 3 -> 7 -> 8 -> 3 -> 5 -> 9 -> 10。
档位 1 开始存的是 1 号剧情点;档位 2 存的是 3 号剧情点;档位 1 后来又存了 9 号剧情点。
提交结果:
代码:
import sysn, m = list(map(int, sys.stdin.readline().split()))
book = {}
a = [[] for i in range(n + 1)]
for i in range(1, n + 1):a[i].append(0)
for i in range(1, n + 1):data = list(map(int, sys.stdin.readline().split()))for x in data[1:]:a[i].append(x)
k = 1
for i in range(m):x, y = list(map(int, sys.stdin.readline().split()))if x == 0:k = a[k][y]if x == 1:book[y] = kprint(k)k = book[y]if x == 2:k = book[y]
print(k)
L2-040 哲哲打游戏(Python3)相关推荐
- L2-040 哲哲打游戏 - java
L2-040 哲哲打游戏 Java (javac) 时间限制 800 ms 内存限制 64 MB Python (python3) 时间限制 1000 ms 内存限制 64 MB 其他编译器 时间限制 ...
- L2-040 哲哲打游戏 (25 分)2021天梯赛c++
哲哲是一位硬核游戏玩家.最近一款名叫<达诺达诺>的新游戏刚刚上市,哲哲自然要快速攻略游戏,守护硬核游戏玩家的一切! 为简化模型,我们不妨假设游戏有 N 个剧情点,通过游戏里不同的操作或选择 ...
- L2-4 哲哲打游戏 (25 分)
L2-4 哲哲打游戏 (25 分) 哲哲是一位硬核游戏玩家.最近一款名叫<达诺达诺>的新游戏刚刚上市,哲哲自然要快速攻略游戏,守护硬核游戏玩家的一切! 为简化模型,我们不妨假设游戏有 N ...
- L2-040 哲哲打游戏 (25 分)-PAT 团体程序设计天梯赛 GPLT
哲哲是一位硬核游戏玩家.最近一款名叫<达诺达诺>的新游戏刚刚上市,哲哲自然要快速攻略游戏,守护硬核游戏玩家的一切! 为简化模型,我们不妨假设游戏有 N 个剧情点,通过游戏里不同的操作或选择 ...
- 2021天梯赛总决赛-L2-4 哲哲打游戏
L2-4 哲哲打游戏 (25 分) 哲哲是一位硬核游戏玩家.最近一款名叫<达诺达诺>的新游戏刚刚上市,哲哲自然要快速攻略游戏,守护硬核游戏玩家的一切! 为简化模型,我们不妨假设游戏有 N ...
- 哲哲打游戏 (25 分)
7-12 哲哲打游戏 (25 分) 哲哲是一位硬核游戏玩家.最近一款名叫<达诺达诺>的新游戏刚刚上市,哲哲自然要快速攻略游戏,守护硬核游戏玩家的一切! 为简化模型,我们不妨假设游戏有 N ...
- 7-6 哲哲打游戏 (25 分)
7-6 哲哲打游戏 (25 分) 哲哲是一位硬核游戏玩家.最近一款名叫<达诺达诺>的新游戏刚刚上市,哲哲自然要快速攻略游戏,守护硬核游戏玩家的一切! 为简化模型,我们不妨假设游戏有 N 个 ...
- 题解2020届天梯赛总决赛L2-4哲哲打游戏
引用 这道题其实就是简单的邻接表存储问题,但因为题目的原因只能采用尾插法,同一个点能到达的点可能非常多,如果全部遍历一遍再取数的话会超时,所以得另辟蹊径~刚好可以用二维vector(简化了next指针 ...
- 哲哲打游戏(简单模拟,重点理解题意)
代码: #include<bits/stdc++.h> using namespace std; #define N 100005 int n,m; vector<int> v ...
最新文章
- 修改所有列_多人编辑,自动汇总,领导可见所有?用 SeaTable 表格更简单
- mongodb学习笔记(2)--curd
- ajax firefox,Jquery ajax不在firefox中工作
- 28行代码AC——习题3-12 浮点数(UVA 11809 - Floating-Point Numbers)——解题报告
- poj 2528_2
- linux文件属性是什么意思,Linux文件属性
- 三星折叠屏手机出事!才用两天就“挂了”
- 20220307:力扣第283场周赛(上)
- npm下载安装 nodejs下载安装
- aida64怎么测试cpu稳定性_如何对超频内存和CPU进行稳定性测试(图文详细版α1.55*)...
- 印地语freeCodeCamp YouTube频道+不和谐聊天现已上线
- 滚动条组件,react-custom-scrollbars
- 计算GPS坐标的直线距离
- win10 桌面(Windows 资源管理器)卡死的根本解决办法
- freebsd php 编译 mysql sql2005_[伊达原创]FreeBSD8.0源码编译安装MYSQL5 APACHE2.2 PHP5.3.2
- [转]Google Dremel 原理 - 如何能3秒分析1PB
- FPGA——状态机专题练习
- OpenDDS Java开发(一):理解Messenger示例
- 警查审问四名嫌疑人,其中三人说真话,一人说谎。
- 劳务派遣信息管理系统软件是什么,教你了解劳务派遣管理系统!