hdu 2084(动态规划)

dp  题  从最简单的做起。

这种类型的题目就是一种思想,一种递归的思想,

 

   就是从最开始的节点往后更新,用这个节点更新下一个节点,就是一直这么下去,一直传递。

 

#include<stdio.h>
#include<stdlib.h>
#include<algorithm>
using namespace std;
int a[105][105];

void dp(int x)
{
     for(int i = x ; i > 0 ; i-- )
     for(int j = i ; j > 0 ; j-- )
     a[i-1][j-1] = max(a[i][j]+a[i-1][j-1],a[i][j-1]+a[i-1][j-1]);
}
     
     
int main()
{
    int c , n;
    
    while(~scanf("%d",&c))
    while(c--)
    {
     scanf("%d",&n);
     for(int i = 0 ; i < n ; i++ )
     for(int j = 0 ; j <= i ; j++ )
     scanf("%d",&a[i][j]);
     
     dp(n-1);
     
     printf("%d\n",a[0][0]);
    }
    
    return 0;
}


 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章