![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
沐凡在路上
这个作者很懒,什么都没留下…
展开
-
(贪心)合并果子--优先级队列
Problem B. 合并果子时间限制 1000 ms内存限制 128 MB题目描述 在一个果园里,多多已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆。多多决定把所有的果子合成一堆。 每一次合并,多多可以把两堆果子合并到一起,消耗的体力等于两堆果子的重量之和。可以看出,所有的果子经过n-1次合并之后,就只剩下一堆了。多多在合并果子时总共消耗的体力等于每次合并所耗体力之和。 因为还要花大力气把这些果子搬回家,所以多多在合并果子时要尽可能地节省体力。假定每个果子重量都为1,并且已原创 2021-12-02 16:36:13 · 176 阅读 · 0 评论 -
(贪心)最小差距
Problem A. 最小差距时间限制 1000 ms内存限制 128 MB题目描述 给定一些不同的一位数字,你可以从这些数字中选择若干个,并将它们按一定顺序排列,组成一个整数,把剩下的数字按一定顺序排列,组成另一个整数。组成的整数不能以0开头(除非这个整数只有1位)。 例如,给定6个数字,0,1,2,4,6,7,你可以用它们组成一对数10和2467,当然,还可以组成其他的很多对数,比如210和764,204和176。这些对数中两个数差的绝对值最小的是204和176,为28。 给定N个不同原创 2021-12-02 12:52:04 · 1398 阅读 · 0 评论 -
(贪心)单源最短路径 Dijkstra算法实现
/*单源最短路径问题*/#include<iostream>#include<string.h> using namespace std;#define MaxV 1000#define INF 0x3F3F3F3F//定义一个足够大的值 ,10的9次方 int linkMarix[MaxV][MaxV];int visited[MaxV];int preV[MaxV];void Dijkstra(int linkMarix[][MaxV],int lowLR...原创 2021-11-23 10:31:16 · 437 阅读 · 0 评论 -
(贪心)小数背包问题、活动安排问题
一、小数背包问题小数背包问题与01背包问题的不同小数背包问题0 1背包问题物品可拆分物品是个不可分的整体背包一定被装满背包可能有空余贪心算法DP算法小数背包问题的解决步骤:一、预处理,把物品按照价值率进行从大到小的排列(希望先装价值率最高的)二、选择第一个物品(价值率最大),记录装进的重量、价值,及剩余容量思考:小数背包问题可以采用动态规划算法来解决吗?代码实现:在重写sort()的compare函数时 ,出错了int compare(item a原创 2021-11-13 10:19:46 · 1587 阅读 · 0 评论 -
(枚举)Problem C. 课堂作业-6-3 lucky number个数
Problem C. 课堂作业-6-3时间限制 1000 ms内存限制 64 MB题目描述李老师的lucky number 是3,5和7,他爱屋及乌,还把所有质因数只有3,5,7的数字认定为lucky number,比如9, 15, 21, 25等等。请聪明的你帮忙算一算小于等于x的lucky number有多少个?输入数据一个正整数x,3=<x<=1000000000000输出数据小于等于x的lucky number的个数。样例输入49样例输出11样例说明int存不原创 2021-11-04 17:52:45 · 667 阅读 · 0 评论 -
(枚举)木棍、绳子切割问题
Problem B. 课堂作业-6-2时间限制 1000 ms内存限制 64 MB题目描述我们有n根的木棍。现在从这些木棍中切割出来m条长度相同的木棍,问这m根木棍最长有多长?输入数据第一行输入两个数字,n(1<=n<=1000)为木棍数目,m(1<=m<=1000)为需要切割出的相同长度的木棍数目 随后n个正整数,表示原始木棍的长度(<=10000)输出数据每组输出一行结果,表示切割后绳子的最长长度(保留两位小数)样例输入4 55 6 7 8样例输出原创 2021-11-04 16:04:22 · 576 阅读 · 0 评论 -
DP清帝之惑之顺治
清帝之惑之顺治Problem B. 清帝之惑之顺治时间限制 1000 ms内存限制 128 MB题目描述 顺治喜欢滑雪,这并不奇怪, 因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待太监们来载你。顺治想知道载一个区域中最长的滑坡。 区域由一个二维数组给出。数组的每个数字代表点的高度。下面是一个例子:1 2 3 4 5 16 17 18 19 6 15 24 25 20 7 14 23 22 21 8 13 12 11原创 2021-10-31 11:20:29 · 426 阅读 · 0 评论 -
动态规划--基本思路理念
动态规划–基本思路理念动态规划的解题思路是:首先将原问题分解成一个个合理的子问题。怎样算合理呢?要求子问题的最优值可以由更小规模的子问题的最优值推导出来。之后就有了DP状态和DP转移方程的概念1.DP状态(要求:最优子结构、无后效性)即子问题的最优值 f[i](1)最优子结构是指:原问题取到最优解时其子问题也取到了最优解。每一个子问题的最优值,都是由其更小规模的子问题的最优值推导而来。(2)无后效性:原问题的最优值,只与子问题的最优值有关(就那个数值),与子问题最优值如何计算得来的无关,也就原创 2021-10-31 11:06:15 · 949 阅读 · 0 评论