题目链接:玩具谜题
java代码:
import java.util.ArrayList;
import java.util.Scanner;
class People{
private int toward;
private String name;
public int getToward() {
return toward;
}
public void setToward(int toward) {
this.toward = toward;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
public class Main {
public static void main(String[] args) {
int n,m;
int index = 0;
ArrayList<People> arr = new ArrayList<>();
Scanner in = new Scanner(System.in);
n = in.nextInt();
m = in.nextInt();
for(int i=0;i<n;++i) {
People p = new People();
p.setToward(in.nextInt());
p.setName(in.next());
arr.add(p);
}
for(int i=0;i<m;++i) {
int a = in.nextInt();
int s = in.nextInt();
// 朝向圈内,向左数=》顺时针
if(arr.get(index).getToward()==0&&a==0)
index = (index-s+n)%n;
// 朝向圈内,向右数=》逆时针
else if(arr.get(index).getToward()==0&&a==1)
index = (index+s)%n;
// 朝向圈外,向左数=》逆时针
else if(arr.get(index).getToward()==1&&a==0)
index = (index+s)%n;
// 朝向圈外,向右数=》顺时针
else if(arr.get(index).getToward()==1&&a==1)
index = (index-s+n)%n;
}
System.out.println(arr.get(index).getName());
}
}