import java.util.*;
public class football{
public static void main(String args[]){
int top=-1;
final int MAX=10000000;
int stack[]=new int[MAX];
//based on stacks
Scanner sc=new Scanner(System.in);
int cases,n,id;
cases=sc.nextInt();
for(int i=0;i<cases;i++){
n=sc.nextInt();
id=sc.nextInt();
if(top>=MAX){
System.exit(0);
}else{
top++;
stack[top]=id;
}
for(int j=0;j<n;j++){
char q;
q=sc.next().charAt(0);
if(q=='P'){
id=sc.nextInt();
top++;
stack[top]=id;
}else if(q=='B'){
int temp=stack[top];
top=top++;
stack[top]=temp;
continue;
}
}
System.out.println("Player "+stack[top]);
}
}
}
/ *这是一个基于玩家传递hackerearth的问题,因为谁在N传递之后对谁进行调整并且我无法通过除样本之外的所有测试用例,请建议可以纠正的错误以便解决这个问题。 * /
答案 0 :(得分:0)
}else if(q=='B'){
int temp=stack[top-1];
top++;
stack[top]=temp;
continue;
}
这是你需要的,但是它不是一个好的情况,堆栈两个简单的变量是你需要跟踪最后的占有。