输入输出样例两个都可以输出正确结果,但是提交全WA了,下了第一组测试数据发现输出了空白结果,这是咋回事呢))
#include<bits/stdc++.h>
using namespace std;
const int maxn=100005;
struct toy{
int code;
string name;
}a[maxn];
int n,m,x,y;
int main(){
cin>>n>>m;//n为小人个数,m为指令条数
for(int i=1;i<=n;i++){
cin>>a[i].code>>a[i].name;
}
int tmp=0;//定位小人
for(int i=1;i<=m;i++){
cin>>x>>y;//x方向,y位移
if(a[tmp].code==0&&x==0) tmp=(n+tmp-y)%n;//左移为减,0为左数,1为右数
else if(a[tmp].code==0&&x==1) tmp=(n+tmp+y)%n;//右移为加
else if(a[tmp].code==1&&x==0) tmp=(n+tmp+y)%n;//右移为加
else if(a[tmp].code==0&&x==1) tmp=(n+tmp-y)%n;
}
cout<<a[tmp].name<<endl;
return 0;
}
(还有一个问题,就是为啥必须要用else if呢?只用if为啥连样例都不能输出呢)