原题链接P1563 玩具谜题
这道题依然是一道模拟题目,就简单讲讲坑点:
1.有些时候在转圈的时候要用到它们站成了一个环的性质!
2.小人面朝的方向影响了它们左右的方向!
3.注意考虑顺时针逆时针与小人面朝的关系就可以很轻松解决!
下面水一波代码:
p.s.这是NOIP2016的提高组的D1T1
#include<bits/stdc++.h> using namespace std; int n,m,u,s=1,fz,l_or_r[100000+1]; //l_or_r:left or right string name[100000+1]; int main() { cin>>n>>m; for(int i=1;i<=n;i++) { cin>>l_or_r[i]>>name[i]; } for(int i=1;i<=m;i++) { cin>>fz>>u; if(l_or_r[s]==fz) s-=u; else s+=u;//分别考虑向内和向外的方向 if(s<=0) { s+=n; } else if(s>n) { s-=n;//特殊判断是否有需要用到环的性质的 } } cout<<name[s]<<endl; return 0; }
ov.
文章来源: https://blog.csdn.net/weixin_44336954/article/details/92409274