L2-040 哲哲打游戏
本题我觉得比较简单,比L2的前三题容易一些,其实就是数组的赋值和指针的移动,我们用pos作为指针,随着每一次的操作,对应移动,不断模拟题目的过程就可以了
解题代码:
cpp
#include<bits/stdc++.h>
using namespace std;
int main(){
int N,M;
cin>>N>>M;
vector<vector<int>> res(N+1);
for(int i=1;i<=N;i++){
int k; cin>>k;
for(int j=0;j<k;j++){
int x;cin>>x;
res[i].push_back(x);
}
}
int op;
int pos=1; int choose;
vector<int> record(102);
vector<int> track;
for(int i=0;i<M;i++){
cin>>op;cin>>choose;
if(op==1){
record[choose]=pos;
cout<<pos<<endl;
}
else if(op==0){
pos=res[pos][choose-1];
}
else if(op==2){
pos=record[choose];
}
}
cout<<pos<<endl;
return 0;
}