泥豪!我是2789617221guo!欢迎来到我的博客|

2789617221guo

园龄:1个月粉丝:2关注:2

2025-02-13 15:38阅读: 5评论: 0推荐: 0

洛谷P1563 [NOIP 2016 提高组] 玩具谜题 题解

洛谷P1563 [NOIP 2016 提高组] 玩具谜题 题解

题目传送门

思路

这题就是一道简单的小模拟题,唯一需要注意的是序号-1为顺时针数,+1为逆时针数。

代码

#include <bits/stdc++.h>
#define endl '\n'
using namespace std;
const int INF = 0x3f3f3f3f;
const double EPS = 1e-8;
const int N = 1e5 + 5;
// 规定-1为顺时针数,+1为逆时针数
int n, m, ai, si, dir[N][3];
string name[N];
int main() {
cin >> n >> m;
for (int i = 0; i < n; i++) {
int d;
cin >> d;
cin >> name[i];
if (d == 0) {
dir[i][0] = -1;
dir[i][1] = 1;
} else {
dir[i][0] = 1;
dir[i][1] = -1;
}
}
int cur = 0;
while (m--) {
cin >> ai >> si;
cur = cur + dir[cur][ai] * si;
if (cur < 0)
cur += n;
else if (cur >= n)
cur %= n;
}
cout << name[cur] << endl;
return 0;
}

AC记录

AC记录,322ms,4.62MB

本文作者:2789617221guo

本文链接:https://www.cnblogs.com/2789617221guo/p/18713734

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   2789617221guo  阅读(5)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起