社区讨论

60分求助

P1563[NOIP 2016 提高组] 玩具谜题参与者 2已保存回复 1

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
1 条
当前快照
1 份
快照标识符
@m4csrdy5
此快照首次捕获于
2024/12/06 21:44
去年
此快照最后确认于
2025/11/04 13:15
4 个月前
查看原帖
劳驾大佬看下 花花绿绿一片,我debug了一下,发现第一个样例点就没过,以为是算下标的时候有问题,i=1开始会出现0导致不存在之数,改了发现结果还是一样,求大佬解答
C
#include<stdio.h>
#include<stdlib.h>
#include<string.h>

struct node{
    int head;
    char name[100];
}a[100005];


int main(){
    int n,m;
    scanf("%d %d",&n,&m);
for(int i=0;i<n;i++){
    scanf("%d %s",&a[i].head,a[i].name);
}
int now=0;
int x,y;
for(int i=1;i<=m;i++){
    scanf("%d%d",&x,&y);
    if(a[now].head==0&&x==0)now=(now-y+n)%n;
    else if(a[now].head&&x==1)now=(now+y)%n;
    else if(a[now].head==1&&x==0)now=(now+y)%n;
    else if(a[now].head==1&&x==1)now=(now-y+n)%n;

}
printf("%s\n",a[now].name);
return 0;
}

回复

1 条回复,欢迎继续交流。

正在加载回复...