
DP动态规划
xyry
ACM入门中……
展开
-
HDU6024 Building Shops 2017中国大学生程序设计竞赛 - 女生专场
Building ShopsTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Total Submission(s): 1122 Accepted Submission(s): 424HDU’s nn classrooms are on原创 2017-07-28 09:50:16 · 458 阅读 · 0 评论 -
Codeforces 522 A. Reposts 树形DP
题目链接:点击打开链接题目大意:给你一棵树,求出这颗树上最长的边。思路:用map把字符串转换成数字,然后建树,从根节点深搜,一层一层搜下去。建树的方法:利用vector ACcode:/*2017年10月13日19点40分AC*/#include #include #include #include #include#include #includ原创 2017-10-13 19:35:22 · 381 阅读 · 0 评论 -
HDU2050 折线分割平面 数学递推
题目链接:HDU2050递推公式为 f(n)=2*n*n-n+1;ACcode:/*2017年9月19日20:39:05HDU2050 折线分割问题 AC */#include #include #include #include #include #include #include #include #include #includ原创 2017-09-19 20:37:52 · 449 阅读 · 0 评论 -
HDU2602 Bone Collector 01背包入门
题目链接:点击打开链接鉴于刚刚入门,还不能够彻底理解,所以找了一个讲得蛮不错的题解帖在下面,等我以后看明白,再把自己的见解写上去。代码参考:http://www.cnblogs.com/Su-Blog/archive/2012/08/28/2659872.html 感谢大佬01背包问题,这种背包特点是:每种物品仅有一件,可以选择放或不放。用子问题定义状态:即dp[转载 2017-09-11 20:49:04 · 232 阅读 · 0 评论 -
HDU2041 超级楼梯 动态规划入门-递推
题目链接:HDU2041斐波那契数列ACcode:/*2017年9月19日10:54:58HDU2041AC */#include #include #include #include #include #include #include #include #include #include using namespace std;typede原创 2017-09-19 10:56:45 · 494 阅读 · 0 评论 -
计蒜客16 爬楼梯 动态规划入门
题目链接:点击打开链接题目思路:下面内容参考自:http://blog.youkuaiyun.com/z9550695/article/details/46932187 感谢大佬我当时手推了几个发现是斐波那契数列,就直接打表输出了……。假设你现在正在爬楼梯,楼梯有n级。每次你只能爬1级或者2级,那么你有多少种方法爬到楼梯的顶部?格式: 第一行输入一个数n(n 接下转载 2017-09-10 21:19:06 · 359 阅读 · 0 评论 -
HDU2044 一只小蜜蜂... 动态规划入门-递推
题目链接:HDU2044将a设为起点,b为终点 手推几个发现 就是 斐波那契数列。一开始写的int爆掉了 = =ACcode:/*2017年9月18日21:24:04HDU2044AC */ #include #include #include #include #include #include #include #include #include原创 2017-09-18 21:25:16 · 849 阅读 · 0 评论 -
HDU2084 数塔 动态规划入门-递推
题目链接:HDU2084题目思路: 从上往下状态太多不好处理,那么我们就从下往上递推,每一层少一个状态。设一个一维数组dp 初始状态存最下面的那一行 即 第五行dp[1]=4,dp[2]=5,dp[3]=2,dp[4]=6,dp[5]=5往上递推一层 转移方程为 dp[j]=max(dp[j],dp[j+1])+a[i][j];那么对于第4行dp[1]=max(4,5)+2=原创 2017-09-17 10:37:25 · 375 阅读 · 0 评论 -
HDU2018 母牛的故事 动态规划入门-递推
题目链接:HDU2018题目思路:对于第N年, 母牛数量为 前一年的数量+前三年母牛的数量生的小牛 递推公式 dp[n]=dp[n-1]+dp[n-3];AC代码:/*2017年9月17日11:07:14HDU2018AC */#include #include #include #include #include #include #include #原创 2017-09-17 11:05:46 · 433 阅读 · 0 评论 -
HDU1950 Bridging signals LIS优化
题目链接:HDU1950 题目大意:给你一段序列,求 LIS=最长递增子序列 朴素的方法O(n^2)会超时,所以这里涉及到了新的知识点 LIS优化->O(nlogn) 关于这个知识点,我在网上看到了比较好的讲解,现在贴在这里最长递增子序列,Longest Increasing Subsequence 下面我们简记为 LIS。 假设存在一个序列d[1..9] = 2 1 5 3 6 4 8原创 2017-08-01 00:21:31 · 317 阅读 · 0 评论 -
HDU1520 Anniversary party 树形DP
题目链接:HDU1520 题目大意:给你n个点,每个点拥有相应的权值,要求选一部分点使得他们权值和最大,要求父亲节点和孩子节点不能同时被选中。 第一次见到树形DP 注释写的很详细 AC代码/*2017年7月31日11:39:59HDU1520 AC代码 */#include<stdio.h>const int maxn=6000+10;//int a[maxn]; struc原创 2017-07-31 16:10:08 · 306 阅读 · 0 评论 -
FZU2150-Fire Game
题目链接:FZU2150题目背景挺无聊的……吐槽一下坑,FZU不支持C++11 巨坑我大概CE了3小时。用迭代器的时候解引用 得用*(it).x 不能用it->x 看了一下午才发现是这里CE先扫一遍看有几个连通分量,如果连通分量大于2,直接输出-1如果连通分量有两个,那么对于每一个连通分量分别取起点当作点火的位置,然后暴力即可。如果连通分量只有一个,那么从这个连通分量原创 2017-12-09 13:21:10 · 413 阅读 · 0 评论