【HDUOJ】几道递推DP
就不写题解了。很基础的递推。
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的更多相关文章
- 递推DP UVA 1366 Martian Mining
题目传送门 /* 题意:抽象一点就是给两个矩阵,重叠的(就是两者选择其一),两种铺路:从右到左和从下到上,中途不能转弯, 到达边界后把沿途路上的权值相加求和使最大 DP:这是道递推题,首先我题目看了老 ...
- 递推DP URAL 1167 Bicolored Horses
题目传送门 题意:k个马棚,n条马,黑马1, 白马0,每个马棚unhappy指数:黑马数*白马数,问最小的unhappy值是多少分析:dp[i][j] 表示第i个马棚放j只马的最小unhappy值,状 ...
- 递推DP URAL 1017 Staircases
题目传送门 /* 题意:给n块砖头,问能组成多少个楼梯,楼梯至少两层,且每层至少一块砖头,层与层之间数目不能相等! 递推DP:dp[i][j] 表示总共i块砖头,最后一列的砖头数是j块的方案数 状态转 ...
- 递推DP URAL 1260 Nudnik Photographer
题目传送门 /* 递推DP: dp[i] 表示放i的方案数,最后累加前n-2的数字的方案数 */ #include <cstdio> #include <algorithm> ...
- 递推DP URAL 1353 Milliard Vasya's Function
题目传送门 /* 题意:1~1e9的数字里,各个位数数字相加和为s的个数 递推DP:dp[i][j] 表示i位数字,当前数字和为j的个数 状态转移方程:dp[i][j] += dp[i-1][j-k] ...
- 递推DP URAL 1119 Metro
题目传送门 /* 题意:已知起点(1,1),终点(n,m):从一个点水平或垂直走到相邻的点距离+1,还有k个抄近道的对角线+sqrt (2.0): 递推DP:仿照JayYe,处理的很巧妙,学习:) 好 ...
- 递推DP 赛码 1005 Game
题目传送门 /* 递推DP:官方题解 令Fi,j代表剩下i个人时,若BrotherK的位置是1,那么位置为j的人是否可能获胜 转移的时候可以枚举当前轮指定的数是什么,那么就可以计算出当前位置j的人在剩 ...
- 递推DP HDOJ 5328 Problem Killer
题目传送门 /* 递推DP: 如果a, b, c是等差数列,且b, c, d是等差数列,那么a, b, c, d是等差数列,等比数列同理 判断ai-2, ai-1, ai是否是等差(比)数列,能在O( ...
- hdu1978(递推dp)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1978 分析: 递推DP. dp[][]表示可以到达改点的方法数. 刚开始:外循环扫描所有点dp[x][ ...
随机推荐
- 【Linux】- CentOS7安装java运行环境
centos7中安装java环境,在安装前先查看有无安装过java环境.直接运行java命令,会提示命令未找到,则是没有安装过java环境. 1.检查 也可以通过rpm命令查看: rpm -qa |g ...
- 【足迹C++primer】47、Moving Objects(2)
版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/cutter_point/article/details/37954805 Moving Object ...
- CG-CTF pwn部分wp
面向pwn刷cgctfPWN1,When did you born题目给了一个ELF文件,和一个.C文件先运行ELF,大概如下What’s Your Birth?0What’s Your Name?0 ...
- shell位置参数和专用参数举例
- python 正则匹配
正则表达式模式 模式字符串使用特殊的语法来表示一个正则表达式: 字母和数字表示他们自身.一个正则表达式模式中的字母和数字匹配同样的字符串. 多数字母和数字前加一个反斜杠时会拥有不同的含义. 标点符号只 ...
- 微信小程序 封装接口
1.util-util.js //封装接口 let baseURL = 'http://127.0.0.1:3000/'; //接口路径 let request = function (url, op ...
- vue中使用axios进行http通信
1.安装 npm install axios 2.在main.js中全局注册 // axios不可以通过use引入,可以通过修改vue原型链 import axios from 'axios' Vue ...
- vue 组件的简单使用01
// 组件 自定义全局组件 Vue.component('mycom', { template: '<div v-on:click="count++">自定义组件 +{ ...
- vue基础三
1.模板语法 在底层的实现上, Vue 将模板编译成虚拟 DOM 渲染函数.如果你熟悉虚拟 DOM 并且偏爱 JavaScript 的原始力量,你也可以不用模板,直接写渲染(render)函数,使用可 ...
- 暴力——cf557c
//枚举高度[1,100000],>l的全部割掉,<l的砍掉最小的 #include<bits/stdc++.h> using namespace std; #define N ...