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

隨筆 - 87  文章 - 279  trackbacks - 0
<2006年2月>
2930311234
567891011
12131415161718
19202122232425
2627281234
567891011

潛心看書研究!

常用鏈接

留言簿(19)

隨筆分類(81)

文章分類(89)

相冊

ACM OJ

My friends

搜索

  •  

積分與排名

  • 積分 - 220588
  • 排名 - 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。


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

FeedBack:
# re: 終于做出了一題IOI了,有點(diǎn)心得。 2006-02-21 20:58 
又忘記 delete []num 了!~~  回復(fù)  更多評論
  
# re: 終于做出了一題IOI了,有點(diǎn)心得。 2006-02-25 09:29 imlazy
加油。  回復(fù)  更多評論
  
# re: 終于做出了一題IOI了,有點(diǎn)心得。 2006-03-11 11:01 空明流轉(zhuǎn)
很好啊,再接再厲!
我的動態(tài)規(guī)劃一直學(xué)的不好。。。  回復(fù)  更多評論
  
# re: 終于做出了一題IOI了,有點(diǎn)心得。 2006-03-12 11:09 
感謝 空明流轉(zhuǎn) 的支持!
我已經(jīng)領(lǐng)略到acm的恐怖了,但是我不會輕易放棄的:)  回復(fù)  更多評論
  
# re: 終于做出了一題IOI了,有點(diǎn)心得。 2006-08-12 21:15 Optimistic
加油!  回復(fù)  更多評論
  
# re: 終于做出了一題IOI了,有點(diǎn)心得。 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;
}
亂寫的,感覺遞歸邏輯更加清晰:-)  回復(fù)  更多評論
  
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
              亚洲午夜电影| 欧美日韩dvd在线观看| 亚洲永久免费视频| 久久精品国产久精国产爱| 日韩视频一区二区| aaa亚洲精品一二三区| 午夜精品久久久久久99热| 久久精品国产免费看久久精品| 国产情人节一区| 91久久久久久久久久久久久| 中文网丁香综合网| 久久久亚洲成人| 亚洲高清av| 99精品视频一区| 亚洲欧美成人| 欧美91视频| 一区二区三区四区在线| 久久亚洲综合网| 国产精品嫩草影院一区二区| 亚洲国产激情| 久久久久久精| 亚洲香蕉网站| 国产欧美日韩亚洲一区二区三区| 久久只有精品| 亚洲免费一区二区| 国产精品久久久久77777| 91久久国产综合久久蜜月精品| 91久久精品日日躁夜夜躁欧美| 在线看日韩欧美| 亚洲视频一区二区| 久久九九电影| 国产美女精品| 欧美自拍偷拍午夜视频| 艳妇臀荡乳欲伦亚洲一区| 国产无一区二区| 久久se精品一区二区| 男女视频一区二区| 亚洲成人中文| 亚洲欧美日本在线| 亚洲美女黄网| 亚洲日本无吗高清不卡| 欧美成人自拍| 亚洲精品久久久久久下一站 | 欧美成人自拍| 香蕉成人久久| 亚洲欧美日韩中文在线制服| 亚洲国产乱码最新视频| 亚洲国产高清一区二区三区| 国产亚洲人成a一在线v站| 久久久777| 国产精品麻豆va在线播放| 亚洲三级性片| 亚洲品质自拍| 欧美11—12娇小xxxx| 麻豆久久久9性大片| 欧美成人免费一级人片100| 久久精品一区二区三区四区 | 欧美日韩一二区| 亚洲一区二区三区高清 | 亚洲精品视频在线| 欧美日韩卡一卡二| 欧美黄色免费| 欧美视频在线观看免费| 久久精品一区二区| 国产日韩精品一区二区三区| 在线亚洲伦理| 西西人体一区二区| 国产欧美一区二区三区视频| 亚洲免费影视第一页| 午夜精品视频| 欧美金8天国| 小处雏高清一区二区三区| 国产精品国产三级国产a| 亚洲桃花岛网站| 午夜在线精品| 激情久久久久久久| 亚洲二区视频| 一本色道久久88精品综合| 亚洲欧美资源在线| 久久久精品一品道一区| 黄色日韩精品| 一本久道久久综合中文字幕| 黄色成人在线网站| 久久综合国产精品| 欧美在线视频一区二区三区| 国产欧美日韩在线视频| 久久精品成人| 亚洲福利国产| 亚洲欧美国产77777| 国产一区二区三区四区在线观看 | 亚洲国产精品成人精品| 国产欧美亚洲视频| 久久精品首页| 亚洲精品国产精品乱码不99按摩| 亚洲一区二区黄色| 国产日韩欧美在线看| 蜜桃av久久久亚洲精品| 欧美亚洲一区二区在线观看| 伊人成年综合电影网| 欧美一区二区三区在线观看视频| 一区二区激情视频| 久热re这里精品视频在线6| 亚洲日本一区二区三区| 久久se精品一区二区| 亚洲激情在线观看视频免费| 国产精品国产福利国产秒拍| 久久久综合免费视频| 久久精品一区四区| 99精品热视频| 精品av久久707| 国产精品久久激情| 欧美gay视频| 欧美在线视频网站| 久久婷婷影院| 亚洲在线视频免费观看| 国产精品久久999| 久久最新视频| 欧美一区二区三区男人的天堂| 亚洲另类在线视频| 免费亚洲电影| 亚洲美洲欧洲综合国产一区| 国产一区二区三区观看| 国产精品地址| 欧美日韩国产综合一区二区| 久久久久国产精品麻豆ai换脸| 亚洲一区精彩视频| 日韩视频一区二区三区在线播放免费观看| 看片网站欧美日韩| 久久成人av少妇免费| 亚洲自拍16p| 亚洲一区二区三区影院| 亚洲美女网站| 亚洲精品中文字| 亚洲二区免费| 亚洲高清资源综合久久精品| 国产综合色精品一区二区三区| 欧美在线视频a| 亚洲专区国产精品| 亚洲尤物视频在线| 中文日韩欧美| 一区二区日韩| 一区二区三区回区在观看免费视频| 欧美激情亚洲综合一区| 欧美大尺度在线观看| 日韩视频一区二区| 亚洲精品美女在线| 亚洲精选在线| 99re6这里只有精品| 日韩午夜在线观看视频| 日韩视频一区二区三区在线播放| 91久久国产精品91久久性色| 亚洲日本va在线观看| 日韩午夜精品| 亚洲欧美激情四射在线日| 亚洲欧美日韩另类精品一区二区三区 | 最新日韩av| 亚洲精品在线三区| 亚洲视屏一区| 亚洲欧美国产77777| 久久国产日韩| 欧美二区在线观看| 亚洲综合国产激情另类一区| 亚洲欧美另类在线观看| 欧美专区在线观看| 免费在线一区二区| 欧美日韩二区三区| 国产欧美精品日韩区二区麻豆天美| 国产欧美在线看| 在线日本高清免费不卡| 99精品福利视频| 欧美亚洲综合另类| 欧美福利在线观看| 一区二区三区四区精品| 久久国产手机看片| 欧美日韩大片| 国产一区999| 一区二区精品国产| 久久香蕉国产线看观看网| 亚洲国产一区二区视频| 亚洲欧美一区在线| 欧美国产大片| 国产一区二区剧情av在线| 99国产精品久久久久久久| 久久精品成人欧美大片古装| 亚洲性线免费观看视频成熟| 久久精品国产亚洲一区二区| 亚洲国产成人av| 欧美亚洲一级片| 欧美日韩中文字幕日韩欧美| 好吊色欧美一区二区三区视频| 日韩亚洲精品视频| 久久另类ts人妖一区二区| 一本久道久久综合狠狠爱| 玖玖国产精品视频| 国产日产欧产精品推荐色| 亚洲激情影院| 裸体素人女欧美日韩| 亚洲一区二区三区精品在线| 欧美久色视频| 欧美视频官网|