TLE卡死80分求助
查看原帖
TLE卡死80分求助
140621
_Bob_楼主2020/11/6 17:46
#include<bits/stdc++.h>
using namespace std;
int r,c,a[110][110],dp[110][110],dx[]={1,0,-1,0},dy[]={0,1,0,-1},maxn;
int main()
{
    cin>>r>>c;
    for(int i=1;i<=r;i++)
    {
        for(int j=1;j<=c;j++)
        {
            cin>>a[i][j];
        }
    }
    for(int k=1;k<=r*c;k++)
    {
        for(int i=1;i<=r;i++)
        {
            for(int j=1;j<=c;j++)
            {
                maxn=0;
                for(int q=0;q<4;q++)
                {
                if(a[i+dx[q]][j+dy[q]]>a[i][j])
                    maxn=max(dp[i+dx[q]][j+dy[q]],maxn);
                }
                dp[i][j]=maxn+1;
            }
        }
    }
    for(int i=1;i<=r;i++)
    {
        for(int j=1;j<=c;j++)
        {
            maxn=max(dp[i][j],maxn);
        }
    }
    cout<<maxn;
    return 0;
}
2020/11/6 17:46
加载中...