Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
140914 韩立鹏 滑雪 C++ 通过 100 0 MS 264 KB 713 2024-04-01 13:34:04

Tests(5/5):


#include <iostream> using namespace std; int a[105][105],f[105][105],r,c; const int dx[4] = {-1,1,0,0}; const int dy[4] = {0,0,-1,1}; int DFS(int x,int y) { if(f[x][y] != 0) return f[x][y]; f[x][y] = 1; for(int i = 0;i < 4;i++) { int next_x,next_y; next_x = x + dx[i]; next_y = y + dy[i]; if(next_x >= 1&&next_x <= r&&next_y >= 1&&next_y <= c&&a[next_x][next_y] < a[x][y]) f[x][y] = max(f[x][y],DFS(next_x,next_y) + 1); } return f[x][y]; } int main() { int i,j,maxn = -1000000000; cin>>r>>c; for(i = 1;i <= r;i++) for(j = 1;j <= c;j++) cin>>a[i][j]; for(i = 1;i <= r;i++) for(j = 1;j <= c;j++) maxn = max(maxn,DFS(i,j)); cout<<maxn<<endl; return 0; }


测评信息: