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

隨筆 - 87  文章 - 279  trackbacks - 0
<2025年11月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456

潛心看書研究!

常用鏈接

留言簿(19)

隨筆分類(81)

文章分類(89)

相冊

ACM OJ

My friends

搜索

  •  

積分與排名

  • 積分 - 220431
  • 排名 - 118

最新評論

閱讀排行榜

評論排行榜

The Triangle
Time Limit:1000MS  Memory Limit:10000K

Description

7

3 8
8 1 0
2 7 4 4
4 5 2 6 5

(Figure 1)

Figure 1 shows a number triangle. Write a program that calculates the highest sum of numbers passed on a route that starts at the top and ends somewhere on the base. Each step can go either diagonally down to the left or diagonally down to the right.

Input
Your program is to read from standard input. The first line contains one integer N: the number of rows in the triangle. The following N lines describe the data of the triangle. The number of rows in the triangle is > 1 but <= 100. The numbers in the triangle, all integers, are between 0 and 99.

Output
Your program is to write to standard output. The highest sum is written as an integer.

Sample Input

5
7
3 8
8 1 0 
2 7 4 4
4 5 2 6 5

Sample Output

30

Source
IOI 1994

#include<iostream>
using namespace std;

int main()
{
    
int n,digital_num;
    
int result[100][100];
    
int *num;
    
int max = 0;
    
int i,j;
    cin
>>n;
    digital_num 
= n;
    num 
= new int[digital_num];

    
for (i = 0; i<n; i++)
    
{
        
for (j = 0; j<=i; j++)
        
{
            cin
>>num[j];
            
if (i==0)
                result[i][j] 
= num[j];
            
if (i>0)
            
{
                
if (j==0)
                    result[i][j] 
= result[i-1][j]+num[j];
                
if (j==i)
                    result[i][j] 
= result[i-1][j-1]+num[j];
                
if (j>0&&j<i)
                
{
                   
if (result[i-1][j]>result[i-1][j-1])
                       result[i][j] 
= result[i-1][j]+num[j];
                   
else
                       result[i][j] 
= result[i-1][j-1]+num[j];
                }

            }

        }

    }

    
    
for (i = 0; i<n; i++)
        
if (result[n-1][i]>max)
            max 
= result[n-1][i];

    cout
<<max<<endl;
    
return 0;
}
上面是通過的原程序。140k,15MS。


這道題目,過得好辛苦,從開始的遞歸,到遞推加回溯,到窮舉,到窮舉加剪枝,結果就從TLE->TLE->TLE->WA.  一直用著要保留路徑的方法,所以怎么也做不出來,后來換了個思維角度,保存每一步的結果,動態規劃,終于就AC了。做了這題,另我復習了好幾種方法,也對DP有了深得認識,可以說這是搞競賽的好題目,經典,推薦??!
posted on 2006-02-21 13:09 閱讀(1626) 評論(6)  編輯 收藏 引用 所屬分類: 算法&ACM

FeedBack:
# re: 終于做出了一題IOI了,有點心得。 2006-02-21 20:58 
又忘記 delete []num 了!~~  回復  更多評論
  
# re: 終于做出了一題IOI了,有點心得。 2006-02-25 09:29 imlazy
加油。  回復  更多評論
  
# re: 終于做出了一題IOI了,有點心得。 2006-03-11 11:01 空明流轉
很好啊,再接再厲!
我的動態規劃一直學的不好。。。  回復  更多評論
  
# re: 終于做出了一題IOI了,有點心得。 2006-03-12 11:09 
感謝 空明流轉 的支持!
我已經領略到acm的恐怖了,但是我不會輕易放棄的:)  回復  更多評論
  
# re: 終于做出了一題IOI了,有點心得。 2006-08-12 21:15 Optimistic
加油!  回復  更多評論
  
# re: 終于做出了一題IOI了,有點心得。 2007-05-03 00:27 App
inline int calpos(int row,int col)
{

return row*(row-1)/2+col;
}
int tmem[5051]={-1,7,3,8,8,1,0,2,7,4,4,4,5,2,6,5};
int bestroute[5051]={-1};
int height=5;

int highestroute(int row,int col)
{
if (row>height)
{
return 0;
}
int pos=calpos(row,col);

if (bestroute[pos]>0)
{
return bestroute[pos];
}
int nr[]={1,0,1,1};
int max=0;
int i;
for (i=0;i<4;i+=2)
{
int tmp=highestroute(row+nr[i],col+nr[i+1]);
if (tmp>max)
{
max=tmp;
}
}
max+=tmem[pos];
bestroute[pos]=max;
return max;
}
亂寫的,感覺遞歸邏輯更加清晰:-)  回復  更多評論
  
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
              欧美大片一区二区| 亚洲一区免费网站| 国产精品大片wwwwww| 欧美日韩大片| 欧美国产日韩一区二区三区| 欧美成人一区在线| 欧美精品电影在线| 欧美日韩国产一级| 国产精品久久中文| 亚洲一区二区三区影院| 亚洲在线播放电影| 久久久久久久久蜜桃| 欧美激情在线有限公司| 欧美午夜精品理论片a级按摩 | 正在播放亚洲一区| 亚洲男人天堂2024| 麻豆9191精品国产| 国产精品videosex极品| 国产一区在线视频| 一区二区三区四区五区视频| 久久精品中文| 99在线|亚洲一区二区| 久久精品91| 国产精品www994| 在线不卡中文字幕| 亚洲尤物视频在线| 亚洲大胆在线| 亚洲欧美日韩一区二区三区在线观看 | 欧美电影美腿模特1979在线看| 欧美日韩日本视频| 伊人久久噜噜噜躁狠狠躁| 亚洲一级片在线观看| 欧美高清视频在线观看| 亚洲女性裸体视频| 久久午夜精品| 国产日韩欧美在线| 亚洲无毛电影| 亚洲激情视频| 美女国产精品| 一区二区三区在线视频播放| 久久国产精品久久久久久久久久| 99热在线精品观看| 欧美高清一区| 亚洲日韩成人| 欧美黄色一区二区| 久久人人爽人人| 韩国一区二区三区在线观看 | 免费成人高清视频| 激情综合在线| 久热精品视频在线观看一区| 亚洲欧美精品中文字幕在线| 欧美色另类天堂2015| 99pao成人国产永久免费视频| 模特精品裸拍一区| 久久全国免费视频| 在线日韩av片| 欧美不卡高清| 你懂的视频一区二区| 欧美日韩激情小视频| 国产乱理伦片在线观看夜一区| 亚洲丝袜av一区| 日韩视频在线观看| 欧美日韩中文另类| 亚洲欧美日韩区| 亚洲一区区二区| 国产欧美午夜| 免费短视频成人日韩| 麻豆精品视频在线| 亚洲毛片在线观看.| 日韩手机在线导航| 国产精品家庭影院| 久久成人在线| 久久亚洲欧美| 一本久久a久久免费精品不卡 | 久久精品夜色噜噜亚洲aⅴ| 国内成人在线| 免费精品视频| 欧美裸体一区二区三区| 亚洲一区二区日本| 欧美在线日韩| 亚洲精品中文字幕女同| 亚洲网友自拍| 精品动漫av| 99精品国产在热久久| 国产日韩精品视频一区| 美日韩精品视频免费看| 欧美日韩国产天堂| 久久久999| 欧美日韩中文| 久久夜精品va视频免费观看| 欧美成人免费全部观看天天性色| 亚洲一区视频| 美日韩精品视频免费看| 亚洲制服少妇| 久久综合九色九九| 欧美亚洲视频一区二区| 老司机一区二区| 午夜欧美理论片| 欧美成人在线免费观看| 久久精品国产清高在天天线| 欧美精品午夜| 欧美v日韩v国产v| 国产精品视频专区| 最新亚洲视频| 伊人夜夜躁av伊人久久| 亚洲直播在线一区| 一区二区三区你懂的| 久久亚洲图片| 久久精品久久综合| 国产精品久久久久免费a∨| 91久久精品国产91性色tv| 精品999在线播放| 午夜精品在线| 午夜精品久久久久| 欧美日韩综合视频网址| 欧美激情第五页| 国内精品美女av在线播放| 亚洲自拍高清| 亚洲欧美中文字幕| 欧美日韩一区自拍| 亚洲一区二区三区在线| 麻豆精品在线观看| 久久裸体艺术| 国产欧美日韩精品专区| 亚洲视频在线观看三级| 中文在线一区| 欧美日韩精品二区第二页| 91久久精品日日躁夜夜躁欧美 | 亚洲小说欧美另类社区| 欧美高清在线一区| 欧美成年人视频| 亚洲国产精品久久久久秋霞影院| 久久精品国产91精品亚洲| 久久九九电影| 国产有码一区二区| 久久精品最新地址| 欧美成人有码| 亚洲久久一区二区| 欧美精品一二三| 99pao成人国产永久免费视频| 在线视频你懂得一区二区三区| 欧美美女视频| 在线视频日韩| 久久九九国产精品怡红院| 好吊色欧美一区二区三区视频| 久久九九国产| 欧美激情一二区| 亚洲视频在线播放| 国产精品一区免费视频| 久久激情综合网| 亚洲国产第一| 亚洲尤物视频在线| 国产亚洲人成a一在线v站| 久久亚洲午夜电影| 亚洲精品日韩在线| 欧美一二三区在线观看| 悠悠资源网亚洲青| 欧美日韩国产在线观看| 亚洲欧美999| 欧美aⅴ一区二区三区视频| 一区二区欧美在线| 国产亚洲在线| 欧美精品一区三区在线观看| 亚洲欧美日韩一区二区三区在线| 久久在线观看视频| 中日韩美女免费视频网址在线观看 | 亚洲欧美资源在线| 一区二区在线观看av| 欧美日韩国产色站一区二区三区| 亚洲欧美日韩综合国产aⅴ| 欧美不卡在线视频| 先锋资源久久| 亚洲精品乱码久久久久久| 国产精品人人做人人爽| 免费看成人av| 先锋影音网一区二区| 亚洲国产高清一区二区三区| 欧美在线影院在线视频| 99在线|亚洲一区二区| 狠狠v欧美v日韩v亚洲ⅴ| 欧美日韩亚洲国产精品| 久久综合伊人77777| 亚洲欧美一区二区三区久久 | 久久久久99| 亚洲午夜久久久久久久久电影网| 亚洲美女一区| 狠狠色综合网| 国产精品视频久久一区| 欧美精品一区三区| 老司机久久99久久精品播放免费 | 国产欧美精品一区| 欧美黄色aaaa| 久久久精品tv| 篠田优中文在线播放第一区| 亚洲精品中文在线| 欧美激情一区二区三区全黄| 久久亚洲精品一区| 久久精品1区| 午夜国产精品影院在线观看| 日韩视频三区|