95分,卡在#8上,求助dalao,救救孩子吧
查看原帖
95分,卡在#8上,求助dalao,救救孩子吧
544859
NOICSP专属蒟蒻楼主2021/11/18 18:58

不知道为啥但#8就是过不了,求助dalao

#include<bits/stdc++.h>
using namespace std;

struct toy{
    int h;
    string name;
} T[1000005]; 
int n,m;

int left(int mian,int now,int lx,int total){
    int ans;
    if(mian == 0){
        ans = now - lx;
        if(ans<1)ans = total + ans;
    }
    if(mian == 1){
        ans = (now + lx)%total;
    }
    return ans;
}

int right(int mian,int now,int rx,int total){
    int ans;
    if(mian == 0){
        ans = (now + rx)%total;
    }
    if(mian == 1){
        ans = now - rx;
        if(ans<1)ans = total + ans;
    }
    return ans;
}

int main(){
    cin>>n>>m;
    int ansa = 1;
    for(int i=1;i<=n;i++){
        cin>>T[i].h>>T[i].name;
    }
    for(int i=1;i<=m;i++){
        int a,s;
        cin>>a>>s;
        if(a == 0){
            ansa = left(T[ansa].h,ansa,s,n);
        }
        if(a == 1){
            ansa = right(T[ansa].h,ansa,s,n);
        }
    }
    cout<<T[ansa].name<<endl;
    return 0;
}

主要是#8没有输出。。。

2021/11/18 18:58
加载中...