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

隨筆 - 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>
              亚洲一区二区欧美| 久久人人看视频| 亚洲图色在线| 亚洲大胆人体视频| 亚洲女人av| 国产精品黄视频| 99精品久久久| 亚洲国产国产亚洲一二三| 欧美中文字幕久久| 国产日韩精品在线| 欧美一区二区免费| 亚洲视频在线观看视频| 欧美日韩国产区一| av成人老司机| 亚洲精品乱码| 欧美日韩精品欧美日韩精品| 亚洲美女精品久久| 最新国产拍偷乱拍精品| 欧美精品在线观看播放| 日韩视频一区二区| 亚洲精品国产无天堂网2021| 欧美精品电影| 亚洲一级电影| 亚洲已满18点击进入久久| 国产精品美女午夜av| 香蕉久久夜色精品国产| 亚洲欧美日韩综合aⅴ视频| 国产伦精品一区二区三区免费 | 一本色道综合亚洲| 欧美日韩一区二区视频在线观看 | 国产女精品视频网站免费| 亚洲欧美日韩国产综合| 亚洲午夜小视频| 国产精品一二| 久久乐国产精品| 美女国内精品自产拍在线播放| 亚洲激情综合| 一区二区三区视频在线看| 国产精品午夜春色av| 久久婷婷国产综合国色天香| 老鸭窝毛片一区二区三区| 一本到12不卡视频在线dvd| 亚洲天堂av在线免费观看| 国产一区二区三区成人欧美日韩在线观看 | 欧美激情a∨在线视频播放| 欧美激情四色| 欧美一级播放| 快she精品国产999| 亚洲午夜视频在线观看| 欧美一区二区在线观看| 亚洲精品韩国| 亚洲欧美日韩在线观看a三区 | 免费观看成人鲁鲁鲁鲁鲁视频 | 亚洲男女自偷自拍| 久久久久久久久久久久久久一区 | 美女图片一区二区| 国产精品99久久久久久久久久久久 | 国内精品久久久久久久影视蜜臀| 亚洲成人直播| 国产欧美日韩免费| 亚洲国产婷婷综合在线精品| 国产拍揄自揄精品视频麻豆| 欧美激情在线播放| 国产一二三精品| 亚洲另类视频| 激情久久影院| 亚洲无限av看| 一本久道久久综合狠狠爱| 欧美在线观看视频在线| 亚洲一二三区在线| 美日韩精品视频| 久久精品一区中文字幕| 欧美视频在线一区| 亚洲国产欧美精品| 一区精品在线| 亚洲欧美日韩国产| 亚洲女优在线| 欧美日韩免费| 亚洲级视频在线观看免费1级| 黑丝一区二区| 久久精品123| 久久久久www| 国产欧美午夜| 亚洲欧美日韩在线| 香蕉久久夜色精品国产使用方法| 欧美女主播在线| 亚洲高清视频在线| 亚洲日本视频| 欧美精品在线观看| 亚洲日韩欧美视频一区| 亚洲精品资源美女情侣酒店| 免费亚洲视频| 91久久夜色精品国产九色| 亚洲人成亚洲人成在线观看| 噜噜噜91成人网| 欧美黄在线观看| 亚洲美女av在线播放| 欧美日本韩国一区二区三区| 亚洲精品免费看| 9i看片成人免费高清| 欧美日韩国产a| 亚洲美女黄网| 亚洲综合国产精品| 国产精品影片在线观看| 亚洲欧美日韩在线| 久久久夜精品| 亚洲国产日韩欧美一区二区三区| 欧美~级网站不卡| 亚洲精品在线视频| 亚洲欧美国产视频| 国产亚洲a∨片在线观看| 久久精品中文| 亚洲国产乱码最新视频| 亚洲一级高清| 国产一区二区三区的电影 | 欧美日韩国产综合网 | 国产精品成人一区| 亚洲欧美综合另类中字| 久久综合久久美利坚合众国| 亚洲第一毛片| 欧美乱人伦中文字幕在线| 中日韩美女免费视频网址在线观看 | 在线观看福利一区| 欧美本精品男人aⅴ天堂| 日韩午夜av在线| 欧美在线视频日韩| 亚洲激情小视频| 国产精品成人国产乱一区| 欧美一级理论片| 亚洲国产欧美国产综合一区| 亚洲影院高清在线| 精品成人一区二区三区| 欧美日韩国产一区精品一区| 香蕉成人久久| 亚洲精品欧美| 亚洲永久精品大片| 一色屋精品视频在线看| 欧美日韩国产一中文字不卡 | 国产日韩欧美精品一区| 男男成人高潮片免费网站| 亚洲一级一区| 欧美激情亚洲一区| 欧美影院成年免费版| 亚洲精品久久久久久下一站| 国产亚洲精久久久久久| 欧美日韩国产综合在线| 久久网站热最新地址| 亚洲综合国产| 亚洲人成在线观看一区二区| 久久亚洲综合| 欧美一区二区三区四区高清| 一本色道精品久久一区二区三区| 精东粉嫩av免费一区二区三区| 国产精品久久91| 欧美日韩成人综合在线一区二区 | 今天的高清视频免费播放成人| 欧美视频在线不卡| 欧美黄色成人网| 久久久久综合| 欧美中文日韩| 欧美中文在线字幕| 午夜精品久久| 亚洲一区二区三区中文字幕| 亚洲精品一区在线| 欧美激情免费在线| 蜜臀av性久久久久蜜臀aⅴ四虎| 久久av最新网址| 欧美在线一二三| 欧美一区亚洲二区| 性欧美激情精品| 午夜精品福利电影| 亚洲综合视频网| 亚洲在线观看免费视频| 99在线精品视频在线观看| 亚洲人成艺术| 亚洲美女av黄| 一区二区三区精密机械公司| 一区二区三区黄色| 这里只有精品视频| 亚洲自拍另类| 亚洲影视九九影院在线观看| 亚洲男同1069视频| 欧美一区二区黄| 久久久久久久一区| 免费日韩一区二区| 亚洲高清资源| 日韩视频免费| 亚洲影音先锋| 欧美一区二区私人影院日本| 欧美资源在线观看| 久久欧美肥婆一二区| 免费黄网站欧美| 欧美啪啪成人vr| 国产精品日本一区二区| 国产欧美在线播放| 在线观看欧美黄色| 99视频精品在线| 亚洲欧美制服另类日韩| 久久精品一区二区| 欧美激情 亚洲a∨综合|