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

隨筆 - 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>
              欧美丝袜一区二区| 国产精品一区二区久久精品| 尤物九九久久国产精品的分类| 亚洲欧美一区二区三区在线| 中文精品在线| 国产精品理论片在线观看| 性欧美暴力猛交另类hd| 欧美亚洲视频| 亚洲高清视频在线观看| 欧美激情第二页| 欧美日韩1区| 欧美一级免费视频| 久久久国产精品一区| 亚洲国产一区二区视频| 亚洲精品影院| 国产精品一区二区在线| 久久一二三四| 欧美日韩一区二区精品| 性欧美大战久久久久久久久| 久久久www成人免费无遮挡大片| 亚洲大胆人体视频| 亚洲精品中文在线| 国产日韩欧美另类| 最新中文字幕一区二区三区| 欧美日韩在线大尺度| 久久久综合香蕉尹人综合网| 老司机精品视频网站| 亚洲一区在线免费观看| 久久久精品国产99久久精品芒果| 亚洲精品视频啊美女在线直播| 中国成人在线视频| 亚洲东热激情| 亚洲欧美视频在线观看| 亚洲九九九在线观看| 欧美亚洲在线视频| 亚洲美女淫视频| 欧美一区二区三区在| 99国产精品国产精品毛片| 亚洲欧美日韩在线| 中文精品视频| 老牛影视一区二区三区| 欧美中文字幕久久| 欧美精品综合| 欧美成人精品影院| 国产农村妇女精品| 日韩手机在线导航| 亚洲国内高清视频| 久久久久久黄| 久久精品国产第一区二区三区| 欧美激情亚洲一区| 欧美国产一区二区三区激情无套| 国产视频欧美视频| 亚洲视频在线看| 亚洲天堂av在线免费| 欧美国产日韩精品免费观看| 久久九九热re6这里有精品| 国产精品久久久久久五月尺| 最新成人av在线| 亚洲人成人一区二区在线观看| 欧美在线视频网站| 欧美中文字幕久久| 国产欧美日韩高清| 午夜国产精品视频| 欧美中文字幕第一页| 国产欧美精品xxxx另类| 一区二区三区欧美视频| 亚洲午夜免费视频| 欧美日韩日日骚| 日韩午夜视频在线观看| 亚洲最黄网站| 欧美日韩国产探花| 亚洲毛片在线| 一区二区三区www| 欧美日韩四区| 一区二区三区免费网站| 午夜精品久久久久久久蜜桃app | 亚洲欧美中文在线视频| 欧美日韩一区二区视频在线| 99精品久久久| 亚洲免费一级电影| 久久精品国产精品亚洲综合 | 亚洲一区二区三区三| 香港久久久电影| 国产在线不卡| 美女国内精品自产拍在线播放| 欧美国内亚洲| 亚洲视频国产视频| 国产麻豆综合| 六月婷婷久久| 亚洲每日在线| 久久久精品国产免大香伊 | 欧美午夜视频| 亚洲欧美日韩爽爽影院| 久久一区二区三区av| 亚洲黄色三级| 国产精品ⅴa在线观看h| 欧美在线视频免费观看| 欧美国产日本韩| 亚洲自拍三区| 在线观看日韩欧美| 国产精品高清一区二区三区| 欧美一区二区在线免费观看 | 亚洲精品永久免费| 国产精品午夜在线观看| 久久全国免费视频| 中文日韩欧美| 欧美国产先锋| 欧美在线亚洲一区| 99re66热这里只有精品4| 国产婷婷97碰碰久久人人蜜臀| 可以看av的网站久久看| 亚洲一区二区三区精品动漫| 免费亚洲一区| 性欧美大战久久久久久久久| 亚洲二区在线视频| 国产精品一区二区久久国产| 男人插女人欧美| 欧美影院在线播放| 一二三区精品福利视频| 欧美成人精品激情在线观看| 午夜精品国产精品大乳美女| 亚洲三级影院| 亚洲国产老妈| 国内外成人在线视频| 欧美视频一二三区| 欧美韩国一区| 麻豆国产精品777777在线 | 裸体女人亚洲精品一区| 亚洲欧美在线一区二区| 夜色激情一区二区| 亚洲国产99| 依依成人综合视频| 黄页网站一区| 国产一区二区电影在线观看| 国产精品久久久久影院色老大 | 欧美日韩成人网| 免费国产自线拍一欧美视频| 久久成人免费| 校园春色国产精品| 先锋亚洲精品| 欧美一区国产一区| 亚洲一区欧美二区| 亚洲伊人观看| 亚洲免费在线电影| 亚洲免费影视| 午夜视频久久久| 亚洲曰本av电影| 亚洲欧美日韩另类精品一区二区三区| 99视频在线精品国自产拍免费观看| 亚洲国产岛国毛片在线| 亚洲高清免费| 亚洲精品网址在线观看| 亚洲人成在线免费观看| 亚洲人成高清| 妖精视频成人观看www| 99re6这里只有精品| 一本久道综合久久精品| 亚洲一区二区精品| 午夜精品免费在线| 久久精品伊人| 欧美成人精品在线观看| 欧美成人dvd在线视频| 欧美日韩国产免费观看| 欧美四级在线| 国产一区二区中文| 在线免费高清一区二区三区| 亚洲精品黄网在线观看| 亚洲一区二区三区777| 欧美在线高清视频| 欧美www视频| 99精品国产热久久91蜜凸| 亚洲亚洲精品在线观看 | 欧美大片在线看免费观看| 亚洲精品日韩激情在线电影| 亚洲视屏在线播放| 久久国产精品久久w女人spa| 欧美大片在线观看一区| 国产精品久久久久77777| 国内久久精品视频| 日韩亚洲一区二区| 欧美伊人影院| 亚洲国产精品精华液2区45| 制服丝袜激情欧洲亚洲| 久久免费偷拍视频| 欧美午夜不卡| 亚洲国产福利在线| 香蕉乱码成人久久天堂爱免费| 奶水喷射视频一区| 亚洲视频axxx| 欧美高清日韩| 国产女人精品视频| 99亚洲精品| 蜜臀av国产精品久久久久| 一本久久a久久精品亚洲| 久久人体大胆视频| 国产精品麻豆欧美日韩ww| 亚洲精品看片| 久久五月天婷婷| 亚洲私拍自拍| 欧美剧在线免费观看网站|