【第22期】观点:IT 行业加班,到底有没有价值?

草原坝上滑梯

原创 2016年08月28日 22:25:45

草原坝上滑梯
只能从上下左右侧移动
输入:行数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;
}
版权声明:更多请参考:http://blog.csdn.net/yangquanhui1991,我们一起每天进步一点点! 举报

相关文章推荐

旅游

1.旅游指南 秋季不得不去的地方!! 摘要:山西平遥、安徽歙县并称为“保存最为完好的四大古城”.逛完古城,你还可以去到城外的拉市海,感受高原湿地的风光.或者去徒步穿越虎跳峡;或者登上玉龙雪山;或...

五一坝上骑马

很早以前就想学骑马,上次去内蒙的翁牛特旗时还想着找一机会骑骑,但没有很好的机会。 五一三天长假,看到绿野http://www.lvye.org/ 上找到有人组织去河北的坝上骑马,以前听张诚也说过坝上骑马好玩,就报名去了。 是4月30号7点从龙泽园地铁站出发, 走上八达岭高速公路时天已经黑了,满天繁...

程序员升职加薪指南!还缺一个“证”!

CSDN出品,立即查看!

八月份去坝上草原

好久以前写的了.再不发出来怕自己都忘了.周六周日去了内蒙古大草原,从北京过去坐了六个小时的车,一路都是盘山公路,快到时地势渐渐开阔起来,眼中全是绿色和点点的牛羊,马在一旁悠闲的吃草,我当时都怔住了,以...

坝上之行~~图5P

      前一阵子趁着草还绿着,人还年轻着,去了一趟坝上草原。特此总结一下,跟大家共享得失。         鲜衣怒马,驰骋江湖~~~     ...

坝上草原扎拉营游感

上周六日,也就是8.25出发公司部门一起去京北第一大草原-扎拉营,坝上草原旅游,似乎我的感悟与旅游本身无关,现总结如下: 1.贫困是罪恶之源,有财富才能更加自由;2.学会生活,学会思考,学会学习别人的...
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)