比赛 |
20190908之惊鸿 |
评测结果 |
AAAAAAAAAAAAAAAAAAAA |
题目名称 |
玩具谜题 |
最终得分 |
100 |
用户昵称 |
瑆の時間~無盡輪迴·林蔭 |
运行时间 |
0.104 s |
代码语言 |
C++ |
内存使用 |
5.92 MiB |
提交时间 |
2019-09-08 13:11:33 |
显示代码纯文本
#include<cstdio>
using namespace std;
inline int read()
{
int s=0;
int f=1;
char ch=getchar();
while(ch<'0'||ch>'9')
{
if(ch=='-')
f=-1;
ch=getchar();
}
while(ch>='0'&&ch<='9')
{
s=(s<<1)+(s<<3)+ch-'0';
ch=getchar();
}
return s*f;
}
struct data
{
char job[12];
int ps;
}people[100005];
int main()
{
long long n,m,i,k,zlp;
int zlf;
freopen("toya.in","r",stdin);
freopen("toya.out","w",stdout);
n=read();
m=read();
for(i=1;i<=n;i++)
people[i].ps=read(),scanf("%s",&people[i].job);
k=1;
for(i=1;i<=m;i++)
{
zlf=read();
zlp=read();
if(zlf==0)
{
if (people[k].ps==0)
{
k-=zlp;
if (k<=0) k=n+k;
}
else if (people[k].ps==1)
{
k+=zlp;
if (k>n) k-=n;
}
}
else if(zlf==1)
{
if (people[k].ps==0)
{
k+=zlp;
if(k>n)
k-=n;
}
else if(people[k].ps==1)
{
k-=zlp;
if(k<=0)
k=n+k;
}
}
}
printf("%s",people[k].job);
return 0;
}