60分WA求救

P1434 [SHOI2002] 滑雪

Brandon鹏 @ 2018-07-24 20:14:08

60分WA求救

#include<cstdio>
#include<algorithm>
using namespace std;
int n,m;
int a[101][101];
int book[101][101];
int ans[120][120];
struct node
{
    int hang;
    int lie;
    int h;
    int book;
}tu[10000+100];
bool cmp(node a,node b)
{
    if(a.h<b.h)
    {
        return 1;
    }
    else
    {
        return 0;
    }
}
int cnt;
int main()
{
    scanf("%d%d",&n,&m);
    for(int i=1;i<=n;i++)
    {
        for(int j=1;j<=m;j++)
        {
            scanf("%d",&a[i][j]);
            cnt++;
            tu[cnt].hang=i;
            tu[cnt].lie=j;
            tu[cnt].h=a[i][j];
            tu[cnt].book=0;
        }
    }
    sort(tu+1,tu+1+cnt,cmp);
    int maxn=0;
    for(int i=1;i<=cnt;i++)
    {
        ans[tu[i].hang][tu[i].lie]=max(max(ans[tu[i].hang+1][tu[i].lie]+1,ans[tu[i].hang][tu[i].lie+1]+1),max(ans[tu[i].hang-1][tu[i].lie]+1,ans[tu[i].hang][tu[i].lie-1]+1));
        if(maxn<ans[tu[i].hang][tu[i].lie])
        {
            maxn=ans[tu[i].hang][tu[i].lie];
        }
    }
    printf("%d",maxn);
    return 0;
}

|