0说明哲哲做出了一定的操作或选择,然后是数字j,说明哲哲在当前剧情点做出了第j选择。我们保证哲哲的选择永远是合法的。1说明哲哲存档一次,然后是数字j,说明存档放在第j档。2说明哲哲做了读存档的操作,然后是数字j,说读存档放在第j位置。
输入样例:
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
输出格式:
接下来的N行对应于一个情节点的开发设置。第一行的第一个数字是Ki,这意味着情节点I可以通过一些操作或选择以下KI情节点;下一个是KI数字,这意味着做K操作或选择可以访问的情节点号。
输出样例:
1
3
9
10
对于每1个操作,输出一行中存档的情节点编号。
简单地给出样例中经过的情节点顺序:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
为了跟踪核心游戏玩家哲哲的战略进展,你计划写一个程序来完成这项工作。假设你已经知道了游戏的所有情节点和过程,以及哲哲的游戏操作,请输出哲哲的游戏进度。
输入格式:
代码长度限制16KBJava限制800ms内存限制64MBPython限制1000ms内存限制64MB其他编译器限制400ms内存限制64MBMBMB
#include<bits/stdc .h>
using namespace std;
int n,m,temp[1100];
vector<int>v[100100];
int main(){
int k,a,p=1;
cin>>n>>m;
for(int i=1;i<=n;i ){
cin>>k;
for(int j=0;j<k;j ){
cin>>a;
v[i].push_back(a);
}
}
int x,y,now=1;
for(int i=0;i<m;i ){
cin>>x>>y;
if(x==0)
now=v[now][y-1];
else if(x==1){
temp[y]=now;
cout<<now<<endl;
}
else if(x==2)
now=temp[y];
}
cout<<now;
return 0;
}
输入第一行是两个正整数N和M,说明总共有N个剧情点,哲哲有M个游戏操作。
样例解释:
协议:所有操作、选择和情节点号均从1号开始。档案不超过100个,编号从1开始。默认情况下,游戏从1号情节点开始。总选项不超过10个
最后有M行,每行的第一个数字是0、1或分别表示:
为了简化模型,我们不妨假设游戏中有n个情节点。通过游戏中不同的操作或选择,我们可以从一个情节点到另一个情节点。此外,游戏还设置了一些文件。在一个情节点中,玩家的游戏进度可以保存在一个文件中。读取文件后,您可以返回情节点,重新操作或选择,以实现不同的情节点。
最后一行输出哲哲最终到达的情节点编号。
文章为作者独立观点,不代表股票交易接口观点