青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

coreBugZJ

此 blog 已棄。

EOJ 1823 數(shù)塔II (動態(tài)規(guī)劃入門)

  1/*
  2EOJ 1823 數(shù)塔II
  3
  4
  5----問題描述:
  6
  7有一個(gè)由正整數(shù)組成的三角形,
  8第一行只有一個(gè)數(shù),
  9除了最下行之外每個(gè)數(shù)的左下方和右下方各有一個(gè)數(shù),
 10
 11如下圖所示:
 12
 13         1
 14       3   2
 15     4  10   1
 16   4   3   2  20
 17
 18從第一行的數(shù)開始,除了某一次可以走到下一行的任意位置外,
 19每次都只能左下或右下走一格,
 20直到走到最下行,
 21把沿途經(jīng)過的數(shù)全部加起來,如何走,使得這個(gè)和盡量大?
 22
 23
 24----輸入:
 25
 26輸入數(shù)據(jù)首先包括一個(gè)整數(shù) C,表示測試實(shí)例的個(gè)數(shù),
 27每個(gè)測試實(shí)例的第一行是一個(gè)整數(shù) N (1 <= N <= 500),表示數(shù)塔的高度,
 28接下來用 N 行數(shù)字表示數(shù)塔,其中第 i 行有 i 個(gè)整數(shù),且所有的整數(shù)均在區(qū)間 [ 0, 99 ] 內(nèi)。
 29
 30
 31----輸出:
 32
 33對于每個(gè)測試實(shí)例,輸出可能得到的最大和。
 34
 35
 36----樣例輸入:
 37
 381
 394
 401
 413 2
 424 10 1
 434 3 2 20
 44
 45
 46----樣例輸出:
 47
 4834
 49
 50
 51*/

 52
 53
 54/************************************************************************
 55
 56----方案三:
 57
 58方案二的空間優(yōu)化,
 59實(shí)際數(shù)據(jù)范圍只有 25 ;
 60使用滾動數(shù)組。
 61
 62*/

 63/*
 64#include <stdio.h>
 65
 66#define  L  25
 67
 68int a[L][L], f[L], h[L];
 69
 70int main(){
 71        int td, n, i, j, ans, tmp;
 72        scanf( "%d", &td );
 73        while( td-- ){
 74                scanf( "%d", &n );
 75                for( i=1; i<=n; ++i ){
 76                        for( j=1; j<=i; ++j ){
 77                                scanf( "%d", &a[i][j] );
 78                        }
 79                }
 80
 81                for( j=1; j<=n; ++j ){
 82                        f[j] = h[j] = a[n][j];
 83                }
 84                for( i=n-1; i>0; --i ){
 85                        tmp = h[i+1];
 86                        for( j=1; j<=i; ++j ){
 87                                tmp = ( tmp < h[j] ? h[j] : tmp );
 88                        }
 89                        for( j=1; j<=i; ++j ){
 90                                h[j] = a[i][j] + ( h[j] > h[j+1] ? h[j] : h[j+1] );
 91                                f[j] = a[i][j] + ( f[j] > f[j+1] ? f[j] : f[j+1] );
 92                                f[j] = ( (tmp+a[i][j]) > f[j] ? (tmp+a[i][j]) : f[j] );
 93                        }
 94                }
 95
 96                ans = f[1];
 97                printf( "%d\n", ans );
 98        }
 99        return 0;
100}
101*/

102
103
104/************************************************************************
105
106----方案二
107
108令 a[i][j] 表示第 i 行第 j 個(gè)數(shù)字,(1 <= j <= i <= n);
109令 h[i][j] 表示從 a[i][j] 開始走到最后一行所能得到的最大和,其中每次都只能左下或右下走一格;
110令 f[i][j] 表示從 a[i][j] 開始走到最后一行所能得到的最大和,其中某一次走到了下一行的任意位置;
111
112
113h[i][j] = a[i][j] + max( h[i+1][j], h[i+1][j+1] )
114f[i][j] = a[i][j] + max( f[i+1][j], f[i+1][j+1], h[i+1][k] )  其中 1 <= k <= i+1
115
116結(jié)果為 f[1][1]。
117
118*/

119/*
120#include <stdio.h>
121
122#define  L  503
123
124int a[L][L], f[L][L], h[L][L];
125
126int main(){
127        int td, n, i, j, ans, tmp;
128        scanf( "%d", &td );
129        while( td-- ){
130                scanf( "%d", &n );
131                for( i=1; i<=n; ++i ){
132                        for( j=1; j<=i; ++j ){
133                                scanf( "%d", &a[i][j] );
134                        }
135                }
136
137                for( j=1; j<=n; ++j ){
138                        f[n][j] = h[n][j] = a[n][j];
139                }
140                for( i=n-1; i>0; --i ){
141                        tmp = h[i+1][i+1];
142                        for( j=1; j<=i; ++j ){
143                                tmp = ( tmp < h[i+1][j] ? h[i+1][j] : tmp );
144                        }
145                        for( j=1; j<=i; ++j ){
146                                h[i][j] = a[i][j] + ( h[i+1][j] > h[i+1][j+1] ? h[i+1][j] : h[i+1][j+1] );
147                                f[i][j] = a[i][j] + ( f[i+1][j] > f[i+1][j+1] ? f[i+1][j] : f[i+1][j+1] );
148                                f[i][j] = ( (tmp+a[i][j]) > f[i][j] ? (tmp+a[i][j]) : f[i][j] );
149                        }
150                }
151
152                ans = f[1][1];
153                printf( "%d\n", ans );
154        }
155        return 0;
156}
157*/

158
159
160/************************************************************************
161
162----方案一
163
164令 a[i][j] 表示第 i 行第 j 個(gè)數(shù)字,(1 <= j <= i <= n);
165令 h[i][j] 表示從第一行的數(shù)開始走到 a[i][j] 所能得到的最大和,其中每次都只能左下或右下走一格;
166令 f[i][j] 表示從 a[i][j] 開始走到最后一行所能得到的最大和,每次都只能左下或右下走一格;
167
168
169h[i][j] = a[i][j] + max( h[i-1][j-1], h[i-1][j] )
170f[i][j] = a[i][j] + max( f[i+1][j], f[i+1][j+1] )
171
172結(jié)果為 max( h[i][j], f[i+1][k] ) 。
173
174*/

175/*
176#include <stdio.h>
177
178#define  L  503
179
180int a[L][L], f[L][L], h[L][L];
181
182int main(){
183        int td, n, i, j, k, ans;
184        scanf( "%d", &td );
185        while( td-- ){
186                scanf( "%d", &n );
187                for( i=1; i<=n; ++i ){
188                        for( j=1; j<=i; ++j ){
189                                scanf( "%d", &a[i][j] );
190                        }
191                }
192
193                for( j=1; j<=n; ++j ){
194                        f[n][j] = a[n][j];
195                }
196                for( i=n-1; i>0; --i ){
197                        for( j=1; j<=i; ++j ){
198                                f[i][j] = a[i][j] + ( f[i+1][j] > f[i+1][j+1] ? f[i+1][j] : f[i+1][j+1] );
199                        }
200                }
201
202                h[1][1] = a[1][1];
203                for( i=2; i<=n; ++i ){
204                        h[i][1] = a[i][1] + h[i-1][1];
205                        h[i][i] = a[i][i] + h[i-1][i-1];
206                        for( j=2; j<i; ++j ){
207                                h[i][j] = a[i][j] + ( h[i-1][j-1] > h[i-1][j] ? h[i-1][j-1] : h[i-1][j] );
208                        }
209                }
210
211                ans = f[1][1];
212                for( i=1; i<n; ++i ){
213                        for( j=1; j<=i; ++j ){
214                                for( k=i+1; k>0; --k ){
215                                        if( h[i][j] + f[i+1][k] > ans ){
216                                                ans = h[i][j] + f[i+1][k];
217                                        }
218                                }
219                        }
220                }
221
222                printf( "%d\n", ans );
223        }
224        return 0;
225}
226*/

227

posted on 2012-03-16 12:02 coreBugZJ 閱讀(853) 評論(0)  編輯 收藏 引用 所屬分類: ACM 、Algorithm 、課內(nèi)作業(yè)

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲电影免费| 亚洲高清久久久| 亚洲福利视频网站| 亚洲精品欧美日韩专区| 欧美日韩免费观看一区=区三区| 亚洲欧美国产精品va在线观看| 欧美影院成人| 99精品欧美一区| 欧美在线视频播放| 亚洲一区二区三区在线观看视频 | 欧美风情在线观看| 久久精品五月| 欧美日韩色一区| 久久久欧美精品sm网站| 欧美视频导航| 亚洲国产高清aⅴ视频| 国产日韩欧美亚洲| 99re6热在线精品视频播放速度 | 欧美一区二区三区免费视频| 99riav久久精品riav| 久久精品国产欧美激情| 亚洲欧美日韩国产精品| 欧美顶级少妇做爰| 美女脱光内衣内裤视频久久影院| 欧美亚州一区二区三区 | 亚洲国产成人精品女人久久久| 亚洲一区免费视频| 宅男噜噜噜66一区二区| 蜜桃精品久久久久久久免费影院| 久久精品国产亚洲精品 | 亚洲人成艺术| 91久久精品国产91性色tv| 久久久久九九九九| 久久久高清一区二区三区| 国产精品免费看片| 99成人免费视频| 一区二区欧美在线| 欧美日韩成人一区| 久久美女性网| 亚洲第一黄色| 久久亚洲春色中文字幕| 久久精品人人做人人爽| 国产乱码精品一区二区三| 在线亚洲高清视频| 亚洲专区欧美专区| 国产精品美女视频网站| 亚洲天堂av在线免费| 亚洲欧美区自拍先锋| 国产精品国产三级欧美二区| 99精品国产在热久久下载| 99视频一区二区三区| 欧美激情91| 亚洲精华国产欧美| 日韩网站免费观看| 欧美日韩精品综合在线| 99riav久久精品riav| 亚洲女与黑人做爰| 国产日产欧产精品推荐色| 午夜精品久久久99热福利| 久久国产一区二区| 永久91嫩草亚洲精品人人| 久久资源av| 91久久精品一区| 亚洲一区二区三区视频| 国产欧美精品xxxx另类| 久久九九免费视频| 亚洲国产精品成人精品| 亚洲一区二区在| 国产一区二区欧美| 乱人伦精品视频在线观看| 亚洲欧洲一区二区三区久久| 亚洲在线视频免费观看| 国色天香一区二区| 欧美成人蜜桃| 亚洲一区二区在线免费观看视频| 久久九九热免费视频| 亚洲激情成人| 国产精品久久久一本精品| 欧美一区二区三区四区在线观看 | 亚洲国产网站| 国产一区二区三区免费在线观看| 免费成人黄色| 性色av一区二区怡红| 国产精品av一区二区| 欧美一区2区视频在线观看| 另类国产ts人妖高潮视频| 亚洲九九九在线观看| 欧美日韩美女| 久久国产精彩视频| 亚洲激情社区| 久久偷窥视频| 亚洲线精品一区二区三区八戒| 国产资源精品在线观看| 欧美区二区三区| 欧美中文字幕视频| 亚洲毛片一区二区| 久久久青草婷婷精品综合日韩 | 久久日韩精品| 免费看亚洲片| 久久国产欧美| 久久精品一二三区| 亚洲一区二区三区午夜| 国产一区二区日韩精品欧美精品| 欧美jizz19性欧美| 亚洲欧美日韩一区在线观看| 欧美福利电影在线观看| 欧美亚洲一级| 一区二区三区精品视频| 在线观看亚洲视频啊啊啊啊| 国产精品电影观看| 欧美刺激性大交免费视频| 午夜在线成人av| 在线中文字幕日韩| 亚洲精品日韩一| 亚洲第一在线视频| 蜜臀a∨国产成人精品| 久久精品理论片| 欧美亚洲一区三区| 亚洲欧美久久| 一区二区三区精品国产| 亚洲欧美日韩国产一区| 免费毛片一区二区三区久久久| 欧美日本乱大交xxxxx| 午夜久久久久久| 99精品视频免费观看| 欧美大片国产精品| 久久人91精品久久久久久不卡| 亚洲你懂的在线视频| 一区二区高清在线观看| 亚洲精品中文字| 亚洲国产小视频| 亚洲国产欧美一区二区三区久久 | 久久久久久香蕉网| 欧美在线国产精品| 午夜欧美不卡精品aaaaa| 亚洲一区二区成人| 亚洲欧美日本在线| 欧美亚洲一区二区在线| 欧美在线视频一区| 久久精品视频免费| 老司机午夜免费精品视频 | 欧美福利精品| 欧美在线free| 香蕉国产精品偷在线观看不卡| 中文在线不卡视频| 亚洲夜间福利| 亚洲综合好骚| 久久av资源网站| 久久久亚洲影院你懂的| 麻豆精品精华液| 欧美区高清在线| 国产精品不卡在线| 国产午夜精品久久久久久免费视| 激情视频亚洲| 亚洲精品在线观| 亚洲天堂久久| 欧美在线播放一区| 欧美14一18处毛片| 亚洲日本久久| 亚洲午夜激情网页| 久久久成人网| 欧美激情亚洲综合一区| 欧美特黄一级| 国内成人精品视频| 亚洲精品免费看| 亚洲欧美视频一区| 国产欧美精品在线| 亚洲免费视频一区二区| 亚洲电影第1页| 免费欧美日韩国产三级电影| 欧美激情欧美激情在线五月| 欧美日韩高清在线播放| 欧美午夜国产| 国产一二精品视频| 亚洲国产精品传媒在线观看| 一本色道久久综合狠狠躁篇怎么玩| 亚洲视频欧洲视频| 久久夜色精品国产欧美乱| 亚洲精品日韩欧美| 久久国产精品亚洲va麻豆| 欧美激情一区二区三区全黄| 欧美日韩视频免费播放| 狠狠色丁香久久婷婷综合丁香 | 日韩一区二区精品| 欧美在线网站| 欧美涩涩视频| 亚洲日本成人网| 亚洲美女色禁图| 久久精品人人做人人爽电影蜜月| 亚洲男人第一av网站| 欧美日韩在线第一页| 国产亚洲福利一区| 亚洲第一精品影视| 亚洲综合成人婷婷小说| 欧美99久久| 午夜精品一区二区三区四区 | 亚洲女ⅴideoshd黑人| 欧美高清在线一区二区| 先锋亚洲精品| 欧美午夜宅男影院|