样例过了,测试AC了一个其余全WA
查看原帖
样例过了,测试AC了一个其余全WA
110336
Dan_继渊楼主2022/6/17 10:51

c++代码

#include <cstdio>
using namespace std;

int M,N,room[10003][103],door[10003][1003],l[10003];   
int main(){
    int sum=0,x=0,k,isDoor=0;
    
    scanf("%d%d",&N,&M);
    for (int i=0;i<N;i++){
        l[i]=0;
        for (int j=0;j<M;j++){
            scanf("%d%d",&isDoor,&room[i][j]);//room储存每个房间指示牌上的数
            if (isDoor) door[i][l[i]++]=j;//door储存每层楼有楼梯的房间的房间号
        };
    };
    scanf("%d",&k);

    for (int i=0,j=-1;i<N;i++){
        x=room[i][k];
        while (door[i][++j]<k);//第k个房间 在 第j个有楼梯的房间 与 第j+1个有楼梯的房间 之间(找到这样的j)
        sum=(sum+room[i][k])%20123;
        k=door[i][ (j+x-1) % l[i] ];//k是每层刚上楼时所在的房间
        j=-1;
    };

    printf("%d\n",sum);

    return 0;
}

样例能过.测试数据能过第一组,其余全WA,求教各位dalao orz

2022/6/17 10:51
加载中...