关注
2、草原坝上滑梯
只能从上下左右侧移动
输入:行数R 列数C
输出:最长区域的长度
样例:
1 2 3 4 5
16 17 18 19 6
15 24 25 20 7
14 23 22 21 8
13 12 11 10 9
输出:25
#include <iostream>
#include <algorithm>
using namespace std;
int r;//行
int c;//列
int a[1000][100];//输入矩阵
int result[1000][1000];//输出矩阵
//递归思想:分别求出上下左右方向的最大长度
int maxLength(int i, int j)
{
int left = j - 1;
int right = j + 1;
int high = i - 1;
int low = i + 1;
int left_value;
int right_value;
int high_value;
int low_value;
//左侧最大长度
if (left >= 0 && a[i][left] < a[i][j])
left_value = maxLength(i, left) + 1;
else
left_value = 0;
//右侧最大长度
if (right <= c - 1 && a[i][right] < a[i][j])
right_value = maxLength(i, right) + 1;
else
right_value = 0;
//上侧最大长度
if (high >= 0 && a[high][j] < a[i][j])
high_value = maxLength(high, j) + 1;
else
high_value = 0;
//下侧最大长度
if (low <= r - 1 && a[low][j] < a[i][j])
low_value = maxLength(low, j) + 1;
else
low_value = 0;
int max1 = max(high_value, low_value);
int max2 = max(left_value, right_value);
return max(max1, max2);
}
int main()
{
while (cin >> r >> c)
{
//初始化矩阵
for (int i = 0; i < r; i++)
for (int j = 0; j < c; j++)
cin >> a[i][j];
//计算每一个位置的最大长度
for (int i = 0; i < r; i++)
for (int j = 0; j < c; j++)
result[i][j] = maxLength(i, j);
//寻找所有位置中最大的长度
int maxLen = 0;
for (int i = 0; i < r; i++)
{
for (int j = 0; j < c; j++)
if (result[i][j] > maxLen)
maxLen = result[i][j];
}
cout << maxLen + 1 << endl;
}
system("pause");
return 0;
}
查看原帖
点赞 3
相关推荐
01-22 00:31
南京信息工程大学 Java 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 在大厂上班是一种什么样的体验 #
12270次浏览 162人参与
# 你的mentor是什么样的人? #
51136次浏览 721人参与
# 程序员找工作至少要刷多少题? #
21098次浏览 268人参与
# 我和mentor的爱恨情仇 #
106266次浏览 948人参与
# 论秋招对个人心气的改变 #
13310次浏览 183人参与
# 机械人避雷的岗位/公司 #
44104次浏览 309人参与
# 为了减少AI幻觉,你注入过哪些设定? #
5964次浏览 179人参与
# 秋招落幕,你是He or Be #
54219次浏览 618人参与
# 校招第一份工作你干了多久? #
136659次浏览 597人参与
# 高薪高压 vs 低薪wlb,你怎么选? #
47400次浏览 290人参与
# 设计人如何选offer #
189706次浏览 868人参与
# 考公VS就业,你怎么选? #
91981次浏览 507人参与
# 职场上哪些行为很加分? #
322539次浏览 3601人参与
# 你的秋招进行到哪一步了 #
2530842次浏览 23253人参与
# 牛客AI体验站 #
7705次浏览 205人参与
# 机械人还在等华为开奖吗? #
312119次浏览 1582人参与
# 秋招投递记录 #
380911次浏览 3204人参与
# 12306一秒售罄,你抢到回家的票了吗? #
2303次浏览 52人参与
# 我现在比当时_,你想录用我吗 #
9414次浏览 128人参与
# 重来一次,我还会选择这个专业吗 #
411262次浏览 3898人参与

