L2-4 哲哲打游戏
哲哲是一位硬核游戏玩家。最近一款名叫《达诺达诺》的新游戏刚刚上市,哲哲自然要快速攻略游戏,守护硬核游戏玩家的一切!

为简化模型,我们不妨假设游戏有 N 个剧情点,通过游戏里不同的操作或选择可以从某个剧情点去往另外一个剧情点。此外,游戏还设置了一些存档,在某个剧情点可以将玩家的游戏进度保存在一个档位上,读取存档后可以回到剧情点,重新进行操作或者选择,到达不同的剧情点。

为了追踪硬核游戏玩家哲哲的攻略进度,你打算写一个程序来完成这个工作。假设你已经知道了游戏的全部剧情点和流程,以及哲哲的游戏操作,请你输出哲哲的游戏进度。

输入格式:
输入第一行是两个正整数 N 和 M (1≤N,M≤10
5
),表示总共有 N 个剧情点,哲哲有 M 个游戏操作。

接下来的 N 行,每行对应一个剧情点的发展设定。第 i 行的第一个数字是 K
i

,表示剧情点 i 通过一些操作或选择能去往下面 K
i

个剧情点;接下来有 K
i

个数字,第 k 个数字表示做第 k 个操作或选择可以去往的剧情点编号。

最后有 M 行,每行第一个数字是 0、1 或 2,分别表示:

0 表示哲哲做出了某个操作或选择,后面紧接着一个数字 j,表示哲哲在当前剧情点做出了第 j 个选择。我们保证哲哲的选择永远是合法的。
1 表示哲哲进行了一次存档,后面紧接着是一个数字 j,表示存档放在了第 j 个档位上。
2 表示哲哲进行了一次读取存档的操作,后面紧接着是一个数字 j,表示读取了放在第 j 个位置的存档。
约定:所有操作或选择以及剧情点编号都从 1 号开始。存档的档位不超过 100 个,编号也从 1 开始。游戏默认从 1 号剧情点开始。总的选项数(即 ∑K
i

)不超过 10
6

输出格式:
对于每个 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 号剧情点。
看题比较折磨,其实就是纯模拟,会用动态数组就没问题

#include <bits/stdc++.h>using namespace std;
const int N=100005;
int dan[105],p;
vector<int> v[N];
int n,m,t=1;
int main()
{cin>>n>>m;for(int i=1;i<=n;++i){int k;cin>>k;for(int j=1;j<=k;++j){int x;cin>>x;if(v[i].size()==0)v[i].push_back(0);v[i].push_back(x); }}for(int i=1;i<=m;++i){int k,x;cin>>k>>x;if(k==0){t=v[t][x];}else if(k==1){dan[x]=t;cout<<t<<endl;}else if(k==2){t=dan[x];}}cout<<t;return 0;
}

L2-040 哲哲打游戏 (25 分)动态数组 纯模拟相关推荐

  1. L2-4 哲哲打游戏 (25 分)

    L2-4 哲哲打游戏 (25 分) 哲哲是一位硬核游戏玩家.最近一款名叫<达诺达诺>的新游戏刚刚上市,哲哲自然要快速攻略游戏,守护硬核游戏玩家的一切! 为简化模型,我们不妨假设游戏有 N  ...

  2. 哲哲打游戏 (25 分)

    7-12 哲哲打游戏 (25 分) 哲哲是一位硬核游戏玩家.最近一款名叫<达诺达诺>的新游戏刚刚上市,哲哲自然要快速攻略游戏,守护硬核游戏玩家的一切! 为简化模型,我们不妨假设游戏有 N  ...

  3. 7-6 哲哲打游戏 (25 分)

    7-6 哲哲打游戏 (25 分) 哲哲是一位硬核游戏玩家.最近一款名叫<达诺达诺>的新游戏刚刚上市,哲哲自然要快速攻略游戏,守护硬核游戏玩家的一切! 为简化模型,我们不妨假设游戏有 N 个 ...

  4. PTA_2021年团体程序设计天梯赛_总决赛_L2-4 哲哲打游戏 (25 分)_搞心态_简单模拟

    // 输出格式: 对于每个 1(即存档)操作,在一行中输出存档的剧情点编号.最后一行输出哲哲最后到达的剧情点编号.输入样例: 10 11 3 2 3 4 1 6 3 4 7 5 1 3 1 9 2 3 ...

  5. L2-040 哲哲打游戏 (25 分)2021天梯赛c++

    哲哲是一位硬核游戏玩家.最近一款名叫<达诺达诺>的新游戏刚刚上市,哲哲自然要快速攻略游戏,守护硬核游戏玩家的一切! 为简化模型,我们不妨假设游戏有 N 个剧情点,通过游戏里不同的操作或选择 ...

  6. L2-040 哲哲打游戏 (25 分)(分析题目意思,读懂题)

    哲哲是一位硬核游戏玩家.最近一款名叫<达诺达诺>的新游戏刚刚上市,哲哲自然要快速攻略游戏,守护硬核游戏玩家的一切! 为简化模型,我们不妨假设游戏有 N 个剧情点,通过游戏里不同的操作或选择 ...

  7. L2-040 哲哲打游戏 (25 分)-PAT 团体程序设计天梯赛 GPLT

    哲哲是一位硬核游戏玩家.最近一款名叫<达诺达诺>的新游戏刚刚上市,哲哲自然要快速攻略游戏,守护硬核游戏玩家的一切! 为简化模型,我们不妨假设游戏有 N 个剧情点,通过游戏里不同的操作或选择 ...

  8. L2-4 哲哲打游戏 (25 分)_模拟

    哲哲是一位硬核游戏玩家.最近一款名叫<达诺达诺>的新游戏刚刚上市,哲哲自然要快速攻略游戏,守护硬核游戏玩家的一切! 为简化模型,我们不妨假设游戏有 N 个剧情点,通过游戏里不同的操作或选择 ...

  9. L2-040 哲哲打游戏 (25 分)

    哲哲是一位硬核游戏玩家.最近一款名叫<达诺达诺>的新游戏刚刚上市,哲哲自然要快速攻略游戏,守护硬核游戏玩家的一切! 为简化模型,我们不妨假设游戏有 N 个剧情点,通过游戏里不同的操作或选择 ...

最新文章

  1. 波卡链Substrate (1)生态介绍
  2. 从Zero到Hero,一文掌握Python关键代码
  3. 用Python实现单向链表
  4. Android开发之Android Studio第三方库的六种依赖讲解说明
  5. html选择器是什么,CSS3选择器是什么?
  6. Kubernetes 的原理
  7. ASP.NET Web API简单学习
  8. 转行进入互联网的一条可行路径
  9. python变量的数据类型
  10. php pdo $_GET,PHP PDOStatement::getColumnMeta讲解
  11. Flickr.net傻瓜教程(三)--打造自己的图片搜索引擎
  12. jQuery学习笔记01
  13. python如何实现清屏
  14. 网站全国公安机关互联网站安全服务平台备案流程
  15. 生成 Excel + PDF 导出,用 Java 实现
  16. C#之 DateGridView分页超简单
  17. matlab逆变换法产生随机数_[原创]Matlab 生成随机数
  18. 虚幻4皮肤材质_虚幻引擎4.5版本预览说明
  19. [游戏数据表]泰拉瑞亚Terraria 全物品属性表
  20. deepin20.7隐藏分区

热门文章

  1. Java 按指定概率生成由字母、数字、特殊符号组成的密码
  2. JAVA-基础 -异常
  3. python数字排序_python数字排序
  4. Dokuwiki的安装、配置管理
  5. To B产品经理需要哪些能力呢?
  6. 视频直播源码 直播软件搭建进行直播推流时,对声音进行音质优化
  7. J2ME学习笔记(八)(转)
  8. 软件使用_第二篇 Latex基础知识
  9. 打造宜居 Ubuntu16.04
  10. Ubuntu20.04系统重装