zoukankan      html  css  js  c++  java
  • POJ--1088--dp--滑雪

    #include<iostream>
    using namespace std;
    const static int N = 102;
    int map[N][N] = {0};
    int mar[N][N] = {0};
    int dp(int,int);
    int row,col;
    int main()
    {
        while(cin>>row>>col)
        {
            int i,j;
            int max = 0;
            for(i=1;i<=row;++i)
                for(j=1;j<=col;++j)
                    cin>>map[i][j];
            for(i=1;i<=row;++i)
                for(j=1;j<=col;++j)
                    {
                        if(mar[i][j] == 0)mar[i][j] = dp(i,j);
                        if(max < mar[i][j])max = mar[i][j];
                    }
            cout<<max<<endl;
        }
        return 0;    
    }
    int dp(int i,int j)
    {
        if(mar[i][j] != 0)return mar[i][j];
        int shang=0,xia=0,zuo=0,you=0;
        if(i-1 >= 1 && map[i-1][j]<map[i][j])shang = 1+dp(i-1,j);
        else shang = 1;
        if(i+1 <= row && map[i+1][j]<map[i][j])xia = 1+dp(i+1,j);
        else xia = 1;
        if(j-1 >= 1 && map[i][j-1]<map[i][j])zuo = 1+dp(i,j-1);
        else zuo = 1;
        if(j+1 <= col && map[i][j+1]<map[i][j])you = 1+dp(i,j+1);
        else you = 1;
        shang = shang > xia?shang:xia;
        shang = shang > zuo?shang:zuo;
        shang = shang > you?shang:you;
        return shang;
    }
  • 相关阅读:
    外部存储 使用详解
    内部存储 使用详解
    SQLite 使用详解
    SharePerference 使用详解
    Preference 使用详解
    Notification 使用详解
    PopupWindow 使用详解
    Fragment 使用详解
    Dialog 使用详解
    ListView 使用详解
  • 原文地址:https://www.cnblogs.com/slothrbk/p/7251893.html
Copyright © 2011-2022 走看看