求助 记忆化搜索 第二个点WA

P1434 [SHOI2002] 滑雪

HeTaiyu @ 2019-08-25 09:46:09

Wrong Answer. wrong answer On line 1 column 2, read 8, expected 9.

6ms/804.00KB

改了很多次,实在不知道是什么原因,求dalao找找原因。 有没有哪个大佬知道第2个点到底是什么神仙

#include<bits/stdc++.h>
using namespace std;
short r,c;
int wrd[103][103];
int f[103][103];
const char zx[]={1,0,0,-1};
const char zy[]={0,1,-1,0};
short nx=0,ny=0;

int dfs(short x,short y){
    //printf("%d,%d ",x,y);
    if(f[x][y]!=1) return f[x][y];

    int va = 0;
    for(int i=0;i<4;i++){
        nx=x+zx[i], ny=y+zy[i];
        if(nx>=c||nx<0) continue;
        if(ny>=r||ny<0) continue;
        if(wrd[nx][ny]>=wrd[x][y]) continue;
        va = max(va, dfs(nx,ny)+1);
    }

    f[x][y] = max(f[x][y], va);
    return f[x][y];
}

int main(){
    cin>>r>>c;
    for(int i=0;i<r;i++)
        for(int j=0;j<c;j++){
            cin>>wrd[j][i];
            f[j][i] = 1;
        }
    int va = -1008611;
    for(int i=0;i<r;i++)
        for(int j=0;j<c;j++)
            va = max(va, dfs(i,j));
    cout<<va;
    return 0;
}

by pzc2004 @ 2019-08-25 09:48:47

不知道,我一遍过的


by HeTaiyu @ 2019-08-25 10:31:02

@wemspzc

Dalao帮帮忙


by HeTaiyu @ 2019-08-25 11:11:53

Wdnmd

已经AC。我把坐标搞混了,r的循环枚举的是y坐标,c的循环枚举的是x坐标。被一个坐标搞了一上午qwq


|