HDU 2084(数塔)

来源:互联网 发布:apache评分与死亡率 编辑:程序博客网 时间:2024/05/16 14:45
/**好久没有写博客了,期末琐事比较多,寒假继续刷题看书,现在还在搞DP,我比较喜欢搜索,所以今天打算写个记忆化搜索的题,但是还没写出来,所以用另一道简单的题来熟悉一下记忆化搜索,其实和暴力搜索没太大区别,主要是对结果进行了储存;下面是HDU 2084的代码**/#include<stdio.h>#include<string.h>#include<algorithm>int num[105][105], dp[105][105], n;int solve(int i, int j){    if(i == n + 1)        return 0;    if(dp[i][j] != 0)        return dp[i][j];        int a = solve(i + 1,j);    int b = solve(i + 1,j + 1);    return dp[i][j] = std::max(a, b) + num[i][j];}int main(){    int i, j, T;    scanf("%d", &T);    while(T--){        memset(dp, 0, sizeof(dp));        scanf("%d", &n);        for(i = 1;i <= n;i++)            for(j = 1;j <= i ;j++)                scanf("%d", &num[i][j]);        solve(1, 1);        printf("%d\n", dp[1][1]);    }}

原创粉丝点击