就不写题解了。很基础的递推。


HDU2084数塔

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2084

代码:

 #include <iostream>
#include <algorithm>
#include <cstdio>
#include <cstring> using namespace std;
const int maxn = ; int dp[maxn][maxn];
int a[maxn][maxn]; int main(){
int T;
cin>>T;
while(T--){
memset(a,,sizeof(a));
memset(dp,,sizeof(dp));
int n;
cin>>n;
for(int i = ; i <= n ;i++){
for(int j = ; j <= i; j++){
cin>>a[i][j];
}
} for(int i = n; i > ; i--){
for(int j = ; j <= n ;j++){
dp[i][j] = max(dp[i+][j] ,dp[i+][j+]) + a[i][j];
}
}
cout<<dp[][]<<endl;
} return ;
}

HDU2018母牛的故事

题目链接http://acm.hdu.edu.cn/showproblem.php?pid=2018

代码:

 #include <iostream>
#include <algorithm>
#include <cstdio>
#include <cstring> using namespace std;
const int maxn = ;
int dp[maxn]; void init(){
dp[] = ;
dp[] = ;
dp[] = ;
dp[] = ;
dp[] = ;
for(int i = ; i <= ; i++){
dp[i] = dp[i-] + dp[i-];
}
} int main(){
int n;
init();
while(cin>>n && n){
cout<<dp[n]<<endl;
} return ;
}

HDU2044小蜜蜂的故事

同类型HDU2041

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2044

代码:

 #include <iostream>
#include <algorithm>
#include <cstdio>
#include <cstring>
#define ll long long
using namespace std;
const int maxn = ;
ll fib[maxn]; void init(){
fib[] = ;
fib[] = ;
fib[] = ;
for(int i = ;i <= maxn ;i++){
fib[i] = fib[i-] + fib[i-];
}
} int main(){
init();
int n,m;
int T;
cin>>T;
while(T--){
cin>>n>>m;
cout<<fib[m-n]<<endl;
} return ;
}

HDU2050

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2050

代码:

 #include <iostream>
#include <algorithm>
#include <cstdio>
#include <cstring>
#define ll long long
using namespace std;
const int maxn = ;
ll dp[maxn]; void init(){
dp[] = ;
dp[] = ;
for(int i = ; i <= maxn; i++){
dp[i] = dp[i-] + *(i-) + ;
}
} int main(){
int T;
cin>>T;
int n;
init();
while(T--){
cin>>n;
cout<<dp[n]<<endl;
} return ;
}

【HDUOJ】几道递推DP的更多相关文章

  1. 递推DP UVA 1366 Martian Mining

    题目传送门 /* 题意:抽象一点就是给两个矩阵,重叠的(就是两者选择其一),两种铺路:从右到左和从下到上,中途不能转弯, 到达边界后把沿途路上的权值相加求和使最大 DP:这是道递推题,首先我题目看了老 ...

  2. 递推DP URAL 1167 Bicolored Horses

    题目传送门 题意:k个马棚,n条马,黑马1, 白马0,每个马棚unhappy指数:黑马数*白马数,问最小的unhappy值是多少分析:dp[i][j] 表示第i个马棚放j只马的最小unhappy值,状 ...

  3. 递推DP URAL 1017 Staircases

    题目传送门 /* 题意:给n块砖头,问能组成多少个楼梯,楼梯至少两层,且每层至少一块砖头,层与层之间数目不能相等! 递推DP:dp[i][j] 表示总共i块砖头,最后一列的砖头数是j块的方案数 状态转 ...

  4. 递推DP URAL 1260 Nudnik Photographer

    题目传送门 /* 递推DP: dp[i] 表示放i的方案数,最后累加前n-2的数字的方案数 */ #include <cstdio> #include <algorithm> ...

  5. 递推DP URAL 1353 Milliard Vasya's Function

    题目传送门 /* 题意:1~1e9的数字里,各个位数数字相加和为s的个数 递推DP:dp[i][j] 表示i位数字,当前数字和为j的个数 状态转移方程:dp[i][j] += dp[i-1][j-k] ...

  6. 递推DP URAL 1119 Metro

    题目传送门 /* 题意:已知起点(1,1),终点(n,m):从一个点水平或垂直走到相邻的点距离+1,还有k个抄近道的对角线+sqrt (2.0): 递推DP:仿照JayYe,处理的很巧妙,学习:) 好 ...

  7. 递推DP 赛码 1005 Game

    题目传送门 /* 递推DP:官方题解 令Fi,j代表剩下i个人时,若BrotherK的位置是1,那么位置为j的人是否可能获胜 转移的时候可以枚举当前轮指定的数是什么,那么就可以计算出当前位置j的人在剩 ...

  8. 递推DP HDOJ 5328 Problem Killer

    题目传送门 /* 递推DP: 如果a, b, c是等差数列,且b, c, d是等差数列,那么a, b, c, d是等差数列,等比数列同理 判断ai-2, ai-1, ai是否是等差(比)数列,能在O( ...

  9. hdu1978(递推dp)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1978 分析: 递推DP. dp[][]表示可以到达改点的方法数. 刚开始:外循环扫描所有点dp[x][ ...

随机推荐

  1. layui 下拉框 动态获取数据

    $(function(){var grade=$("#grade");grade.append("一年级"); //添加下拉列表grade.append(&qu ...

  2. 热修复设计之CLASS_ISPREVERIFIED(二)

    阿里P7移动互联网架构师进阶视频(每日更新中)免费学习请点击:https://space.bilibili.com/474380680本篇文章将继续从CLASS_ISPREVERIFIED实战来介绍热 ...

  3. 桩服务开发2---与python结合

    from mitmproxy import httpdef request(flow): request_data=flow.request print(request_data) 进入py目录,在终 ...

  4. JSP版本的数据库操作

    代码时间:2015-6-16 <%@ page language="java" import="java.util.*" pageEncoding=&qu ...

  5. Tomcat发布项目的几种方式

    如何在浏览器访问一个xml文件 拷贝这个文件到webapps/ROOT底下, 在浏览器里面访问 直接把tomcat/webapps/ROOT目录下 浏览器访问http://localhost:8080 ...

  6. 请求一个url的全过程

    最近在进行前端面试方面的一些准备,遇到了一个经典前端问题,一个url从输入到页面加载中间到底发生了什么,以前也认真想过这个问题,但是当时回答的都不全面,现在来好好总结一下: 总体来说分为以下六个步骤: ...

  7. CentOs如何找回root密码

    当CentOs的root密码忘了的时候,可以进入单用户模式,更改一下root密码就可以了. 具体操作如下 1.重启Linux后,在此界面,3秒内按下回车键 2.出现此界面 3.按e键,进入下图,然后把 ...

  8. Codeforces 351C Jeff and Brackets 矩阵优化DP

    题意:你要在纸上画一个长度为n * m的括号序列,第i个位置画左括号的花费是a[i % n], 画右括号的花费是b[i % n],问画完这个括号序列的最小花费.n <= 20, m <= ...

  9. PHP-在排序数组中查找元素的第一个和最后一个位置

    给定一个按照升序排列的整数数组 nums,和一个目标值 target.找出给定目标值在数组中的开始位置和结束位置. 你的算法时间复杂度必须是 O(log n) 级别. 如果数组中不存在目标值,返回 [ ...

  10. ECMAScript6 Promise

    Promise在Javascript中早就已经实现,在ECMAScript6中正式加入到标准.那么Promise到底是干什么的?怎么用? 一.Promise介绍 Promise是一个对象,用来传递异步 ...