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

隨筆 - 87  文章 - 279  trackbacks - 0
<2025年9月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

潛心看書研究!

常用鏈接

留言簿(19)

隨筆分類(81)

文章分類(89)

相冊(cè)

ACM OJ

My friends

搜索

  •  

積分與排名

  • 積分 - 219411
  • 排名 - 118

最新評(píng)論

閱讀排行榜

評(píng)論排行榜

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.  一直用著要保留路徑的方法,所以怎么也做不出來,后來換了個(gè)思維角度,保存每一步的結(jié)果,動(dòng)態(tài)規(guī)劃,終于就AC了。做了這題,另我復(fù)習(xí)了好幾種方法,也對(duì)DP有了深得認(rèn)識(shí),可以說這是搞競(jìng)賽的好題目,經(jīng)典,推薦!!
posted on 2006-02-21 13:09 閱讀(1623) 評(píng)論(6)  編輯 收藏 引用 所屬分類: 算法&ACM

FeedBack:
# re: 終于做出了一題IOI了,有點(diǎn)心得。 2006-02-21 20:58 
又忘記 delete []num 了!~~  回復(fù)  更多評(píng)論
  
# re: 終于做出了一題IOI了,有點(diǎn)心得。 2006-02-25 09:29 imlazy
加油。  回復(fù)  更多評(píng)論
  
# re: 終于做出了一題IOI了,有點(diǎn)心得。 2006-03-11 11:01 空明流轉(zhuǎn)
很好啊,再接再厲!
我的動(dòng)態(tài)規(guī)劃一直學(xué)的不好。。。  回復(fù)  更多評(píng)論
  
# re: 終于做出了一題IOI了,有點(diǎn)心得。 2006-03-12 11:09 
感謝 空明流轉(zhuǎn) 的支持!
我已經(jīng)領(lǐng)略到acm的恐怖了,但是我不會(huì)輕易放棄的:)  回復(fù)  更多評(píng)論
  
# re: 終于做出了一題IOI了,有點(diǎn)心得。 2006-08-12 21:15 Optimistic
加油!  回復(fù)  更多評(píng)論
  
# 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ù)  更多評(píng)論
  
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
              久久国产欧美| 久热精品在线| 欧美激情一区二区三区四区| 亚欧成人在线| 欧美一区二区私人影院日本| 羞羞答答国产精品www一本| 欧美亚洲综合网| 久久精品一区二区三区四区| 久久久久久久波多野高潮日日| 欧美在线免费观看| 蜜桃精品久久久久久久免费影院| 久久综合五月| 亚洲国产视频a| 亚洲国产精品久久久| 亚洲精品字幕| 香蕉亚洲视频| 欧美大片免费观看在线观看网站推荐| 免费毛片一区二区三区久久久| 欧美日韩mv| 国产主播精品在线| 亚洲国产精品久久人人爱蜜臀| 99热在线精品观看| 亚洲尤物精选| 中文av一区特黄| 欧美在线黄色| 亚洲国产精品一区二区www| 亚洲精品综合精品自拍| 亚洲欧美国产不卡| 麻豆精品一区二区综合av| 亚洲另类一区二区| 欧美在线观看一区二区三区| 欧美电影免费观看高清完整版| 欧美日韩一区二区在线视频| 国产一区二区三区久久| 一区二区欧美在线| 麻豆9191精品国产| 亚洲欧美日本国产有色| 欧美成人视屏| 国产综合18久久久久久| 午夜日韩在线观看| 99www免费人成精品| 免费日韩成人| 一区在线观看| 久久爱www.| 亚洲一本视频| 欧美三级欧美一级| 亚洲精品欧美日韩| 欧美v国产在线一区二区三区| 一区二区三区导航| 欧美精品亚洲| 亚洲美女一区| 欧美高清成人| 久久国产精品色婷婷| 国产精品久久久久久久久久免费| 日韩视频久久| 欧美高清不卡| 久久综合电影| 亚洲激情视频网站| 欧美mv日韩mv国产网站| 久久精品国产96久久久香蕉| 国产日韩精品在线观看| 先锋亚洲精品| 亚洲欧美国产视频| 国产乱码精品一区二区三| 亚洲欧美日本日韩| 亚洲尤物在线| 国产日韩精品一区| 久久精品电影| 久久久久久久91| 亚洲高清久久久| 亚洲高清自拍| 欧美日韩爆操| 欧美亚洲一区二区在线| 亚洲欧美日韩系列| 韩日精品视频一区| 欧美成人午夜激情视频| 欧美二区在线播放| 国产精品99久久久久久www| 一区二区三区福利| 国产欧美午夜| 欧美电影打屁股sp| 欧美日韩18| 亚洲欧美bt| 亚洲一区二区视频在线| 亚洲欧洲av一区二区| 久久综合影音| 亚洲日本成人在线观看| 91久久精品国产91久久| 欧美日韩亚洲国产精品| 欧美亚洲三级| 久久综合色播五月| 亚洲天堂网站在线观看视频| 亚洲一区二区成人| 亚洲第一福利视频| 亚洲精品在线视频观看| 国产无一区二区| 欧美激情久久久久久| 欧美视频在线观看一区| 久久精品道一区二区三区| 欧美.www| 久久久久久夜精品精品免费| 欧美精品二区| 久久―日本道色综合久久| 欧美精品一二三| 久久久视频精品| 欧美日韩精品在线| 久热国产精品视频| 国产精品福利网| 欧美成人一区二区| 国产伦精品一区二区三区视频孕妇| 蜜臀久久99精品久久久久久9| 欧美日韩在线视频观看| 免费亚洲视频| 国产日韩欧美一区二区三区四区| 亚洲高清一区二| 一区免费在线| 欧美亚洲一区二区在线| 在线视频欧美日韩| 麻豆久久婷婷| 久久精品人人做人人综合| 欧美色精品天天在线观看视频| 噜噜噜在线观看免费视频日韩| 欧美体内she精视频在线观看| 久久蜜桃香蕉精品一区二区三区| 欧美午夜视频一区二区| 亚洲激情成人| 亚洲激情成人在线| 久久在线视频| 麻豆亚洲精品| 国产一区亚洲| 欧美一区二区啪啪| 欧美在线视频一区二区三区| 国产精品国产馆在线真实露脸 | 好看的日韩视频| 亚洲视频在线观看网站| 亚洲美女色禁图| 欧美精品久久久久久久| 亚洲国产黄色片| 亚洲精品一区二区三区婷婷月| 久久在线免费观看视频| 欧美黄色免费| 亚洲精品影视| 欧美理论电影网| 亚洲精品在线免费| 亚洲综合激情| 国产精品入口| 午夜精品一区二区三区在线视| 欧美亚洲专区| 一区二区av在线| 蜜臀av一级做a爰片久久| 老司机免费视频一区二区三区| 国产精品入口尤物| 亚洲欧美成人| 久久久亚洲高清| 黄色亚洲大片免费在线观看| 久久精品成人一区二区三区| 欧美1区3d| 一本色道久久| 国产农村妇女精品一二区| 欧美一区二区三区在线播放| 久久性天堂网| 亚洲精品午夜精品| 国产精品久久久久av| 欧美一区二区免费观在线| 欧美国产日本| 亚洲一区二区三区四区五区黄| 国产精品午夜电影| 久久噜噜噜精品国产亚洲综合| 亚洲电影毛片| 香蕉久久夜色精品国产使用方法| 国产午夜精品理论片a级大结局| 久久久久久综合| 亚洲精品日日夜夜| 久久九九国产精品| 一本色道久久| 激情av一区| 欧美日韩一区二区精品| 亚洲欧美久久| 亚洲精品欧美在线| 久久久亚洲人| 亚洲无毛电影| 亚洲高清网站| 国产精品伊人日日| 奶水喷射视频一区| 午夜亚洲视频| 宅男在线国产精品| 亚洲国产成人不卡| 久久久www成人免费精品| 亚洲麻豆av| 精品999成人| 国产精品丝袜白浆摸在线| 欧美成人精品h版在线观看| 午夜精品久久久久久久蜜桃app | 日韩一级精品视频在线观看| 久久精品国产亚洲精品 | 国产精品中文字幕欧美| 欧美凹凸一区二区三区视频| 欧美一级在线播放| 亚洲视屏一区| 日韩亚洲综合在线|