boby0577 2022-09-17 13:52 采纳率: 66.7%
浏览 15
已结题

洛谷P1434,这个代码为什么RE?

#include<iostream>
using namespace std;
int n,m,a[105][105],f[105][105],mx,x,y,ans,d1[]={-1,0,0,1},d2[]={0,-1,1,0};
bool check(int a1,int b1,int a2,int b2){
    if(a[a1][b1]<a[a2][b2])return false;
    if(a2>n||a2<1||b2>m||b2<1)return false;
    return true;
}
int dfs(int a,int b){
    if(f[a][b])return f[a][b];
    f[a][b]=1;
    for(int i=0;i<4;i++){
        int nx=x+d1[i],ny=y+d2[i];
        if(check(a,b,nx,ny)){
            dfs(nx,ny);
            f[a][b]=max(f[a][b],f[nx][ny]+1);
        }
    }
    return f[a][b];
}
int main(){
    cin>>n>>m;
    for(int i=1;i<=n;i++){
        for(int j=1;i<=m;j++){
            cin>>a[i][j];
        }
    }
    for(int i=1;i<=n;i++){
        for(int j=1;j<=m;j++){
            ans=max(ans,dfs(i,j));
        }
    }
    cout<<ans;
}

洛谷P1434,请问这个为什么RE?

展开全部

  • 写回答

1条回答 默认 最新

  • 快乐鹦鹉 2022-09-17 13:59
    关注

    13行, int nx=x+d1[i],ny=y+d2[i];这里的x,y从哪里来的值??

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
    boby0577 2022-09-19 12:53

    看来我脑子有点短路了,连变量名都写错了

    回复
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 9月26日
  • 已采纳回答 9月19日
  • 创建了问题 9月17日
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部