#include<iostream> #include<string> using namespace std; const int N=110000; struct ins{ int fang; int shu;}; ins a[N]; struct toy{ int fang; string job;}; toy b[N]; void zhuan(int n,int i,int &x){ if(b[x].fang==0){ if(a[i].fang==0) x-=a[i].shu; else x+=a[i].shu; } else{ if(a[i].fang==0) x+=a[i].shu; else x-=a[i].shu; } x%=n; if(x<0) x+=n; } int main(){ int m,n,x=0; cin>>n>>m; for(int i=0;i<n;i++) cin>>b[i].fang>>b[i].job; for(int i=0;i<m;i++) cin>>a[i].fang>>a[i].shu; for(int i=0;i<m;i++) zhuan(n,i,x); x%=n; if(x<0) x+=n; cout<<b[x].job<<endl; return 0; } /************************************************************** Problem: 2347 User: admin Language: C++ Result: Accepted Time:625 ms Memory:7232 kb ****************************************************************/