额……这个问题……

就用「NOIP2016」玩具谜题说吧……

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

代码上来了!!

#include<bits/stdc++.h>
using namespace std;
struct toy{
    bool inw;/*朝外*/
    string name;
}a[100000+5];
int main()
{
    int n,m,i;
    cin>>n>>m;
    for(i=0;i<n;i++) cin>>a[i].inw>>a[i].name;
    int now=0;
    bool x;/*向右*/
    int y;
    for(i=1;i<=m;i++){
        cin>>x>>y;
        if(a[now].inw==0&&x==0)now=(now+n-y)%n;
        else if(a[now].inw==0&&x==1)now=(now+y)%n;
        else if(a[now].inw==1&&x==0)now=(now+y)%n;
        else if(a[now].inw==1&&x==1)now=(now+n-y)%n;
    }
    cout<<a[now].name;
    return 0;
}

言简意赅,是不是??

还有,朝右与朝外可以帮助自己与别人更好的理解!

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄