• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            我希望你是我獨(dú)家記憶

            一段永遠(yuǎn)封存的記憶,隨風(fēng)而去
            posts - 263, comments - 31, trackbacks - 0, articles - 3
               :: 首頁 :: 新隨筆 ::  :: 聚合  :: 管理

            PKU——1088——(滑雪DP)

            Posted on 2008-08-21 10:58 Hero 閱讀(159) 評論(0)  編輯 收藏 引用 所屬分類: 代碼如詩--ACM
             1 //1088 Accepted 440K 16MS C++ 1725B 
             2 
             3 //DP--排序后DP
             4 //dp[i][j] = fmax( dp[i][j], dp[m][n]+1 ) ;
             5 //[m][n]是和[i][j]相鄰的且val比[i][j]小的坐標(biāo)
             6 
             7 #include <stdio.h>
             8 #include <stdlib.h>
             9 #include <string.h>
            10 
            11 const int size = 120 ;
            12 int data[size][size] ;
            13 int dp[size][size] ;
            14 struct NODE
            15 {
            16     int row ;
            17     int col ;
            18     int val ;
            19 };
            20 struct NODE node[size*size] ;
            21 int cnode = 0 ;
            22 int row, col ;
            23 
            24 int fmax( int a, int b )
            25 {
            26     return a > b ? a : b ;
            27 }
            28 
            29 void input() 
            30 {
            31     memset( data, -1sizeof(data) ) ; cnode = 0 ;
            32     forint i=1; i<=row; i++ ) forint j=1; j<=col; j++ ) {
            33         scanf( "%d"&data[i][j] ) ;
            34         node[cnode].row = i ; node[cnode].col = j ; node[cnode++].val = data[i][j] ;
            35     }
            36 }
            37 
            38 int cmp( const void *a, const void *b )
            39 {
            40     struct NODE *= (struct NODE *)a ;
            41     struct NODE *= (struct NODE *)b ;
            42     return c->val - d->val ;
            43 }
            44 
            45 void process()
            46 {
            47     qsort( node, cnode, sizeof(node[0]), cmp ) ;//從小到大排序
            48 
            49     memset( dp, 0sizeof(dp) ) ;
            50 
            51     int curc, curr ;
            52     forint i=0; i<cnode; i++ )
            53     {
            54         curr = node[i].row ; curc = node[i].col ; dp[curr][curc] = 1 ;//初始化
            55         if( data[curr][curc] > data[curr][curc-1] )
            56             dp[curr][curc] = fmax( dp[curr][curc], dp[curr][curc-1]+1 ) ;
            57         if( data[curr][curc] > data[curr][curc+1] )
            58             dp[curr][curc] = fmax( dp[curr][curc], dp[curr][curc+1]+1 ) ;
            59         if( data[curr][curc] > data[curr-1][curc] )
            60             dp[curr][curc] = fmax( dp[curr][curc], dp[curr-1][curc]+1 ) ;
            61         if( data[curr][curc] > data[curr+1][curc] )
            62             dp[curr][curc] = fmax( dp[curr][curc], dp[curr+1][curc]+1 ) ;
            63     }
            64 }
            65 
            66 void output()
            67 {
            68     int maxlen = -1 ;
            69     forint i=1; i<=row; i++ ) forint j=1; j<=col; j++ )
            70     {
            71         if( dp[i][j] > maxlen ) maxlen = dp[i][j] ;
            72     }
            73 
            74     printf( "%d\n", maxlen ) ;
            75 }
            76 
            77 int main()
            78 {
            79     while( scanf( "%d %d"&row, &col ) != EOF )
            80     {
            81         input() ;
            82 
            83         process() ;
            84 
            85         output() ;
            86     }
            87 
            88     return 0 ;
            89 }
            亚洲国产精品无码久久一区二区| 午夜天堂精品久久久久| 99国产精品久久| 99久久精品国产一区二区蜜芽| 日本精品久久久久影院日本| 国产69精品久久久久APP下载| 亚洲午夜无码久久久久小说| 色欲综合久久中文字幕网| 亚洲国产精品一区二区久久| 日韩亚洲国产综合久久久| 久久er99热精品一区二区| 久久久久人妻一区精品| 久久久久AV综合网成人| 中文字幕精品久久久久人妻| 久久久中文字幕| 亚洲精品乱码久久久久久蜜桃不卡| 狠狠色婷婷久久综合频道日韩| 久久香蕉国产线看观看精品yw | 久久婷婷色综合一区二区| www.久久热| av色综合久久天堂av色综合在| 久久久精品国产sm调教网站| 午夜肉伦伦影院久久精品免费看国产一区二区三区 | 精品久久久久久久国产潘金莲| 国产亚洲美女精品久久久| 久久综合国产乱子伦精品免费| 91久久婷婷国产综合精品青草| 久久九九久精品国产| 久久99精品久久久久久| 成人免费网站久久久| 亚洲va国产va天堂va久久| 亚洲午夜精品久久久久久app| 国产精品美女久久久| 国产精品一区二区久久精品| 777午夜精品久久av蜜臀| 久久青青色综合| 久久久久久午夜精品| 久久精品国产99国产精品导航 | 久久久久久国产精品无码下载 | 久久精品一区二区| 国产精品久久久久jk制服|