一.动态规划 适合用动态规划的问题的基本特征 参考 https://zhidao.baidu.com/question/561484516800579644.html 1.最优子结构 母问题的最优解包含其子问题的最优解,即具有最优子结构,即子问题最优时,母问题通过优化一定能获得最优解 2.子问题重叠 ...
分类:
其他好文 时间:
2020-03-15 13:40:34
阅读次数:
49
你和你的朋友,两个人一起玩 Nim 游戏:桌子上有一堆石头,每次你们轮流拿掉 1 - 3 块石头。 拿掉最后一块石头的人就是获胜者。你作为先手。 你们是聪明人,每一步都是最优解。 编写一个函数,来判断你是否可以在给定石头数量的情况下赢得游戏。 示例: 输入: 4 输出: false 解释: 如果堆中 ...
分类:
其他好文 时间:
2020-03-14 17:00:22
阅读次数:
69
Q:给出一个字符串s,分割s使得分割出的每一个子串都是回文串 计算将字符串s分割成回文分割结果的最小切割数 例如:给定字符串s="aab", 返回1,因为回文分割结果["aa","b"]是切割一次生成的。 A: 动态规划问题。 cut[i] 表示子串(0,i)的最小回文切割,则最优解在cut[s.l ...
分类:
其他好文 时间:
2020-03-13 18:59:48
阅读次数:
57
一、一般使用场景 常用于多阶段决策问题 最优解问题 区别于贪心算法只考虑眼前的局部利益 动态规定求解的是整体的最优值 如:求A到B的最短路径 A出发可达 A1 A2 A3 A1 出发可达 B1 B2 A2 出发可达 B2 B3 .... 二、特点 最优子结构 : 最优解的问题可以由子问题的最优解转换 ...
分类:
其他好文 时间:
2020-03-11 20:58:37
阅读次数:
61
粒子群优化算法(PSO)是在1995年由Eberhart博士和Kennedy博士一起提出的,它源于对鸟群捕食行为的研究。它的基本核心是利用群体中的个体对信息的共享从而使得整个群体的运动在问题求解空间中产生从无序到有序的演化过程,从而获得问题的最优解。在PSO中,所有的粒子都具有一个位置向量(粒子在解 ...
分类:
其他好文 时间:
2020-03-10 20:18:24
阅读次数:
62
首先考虑一下:如果我们知道要买(或送)哪几袋米,如何确保自己的钱够用? 显然应该买最便宜的几个,剩下的送。 所以我们可以枚举一个$p$,比$p$便宜的米用买的方式,比$p$贵的米用送的方式,不会遗漏最优解。把米按价格排序用背包就可以做到$O(n^2m)$。 #include<cstdio> #inc ...
分类:
其他好文 时间:
2020-03-03 11:06:27
阅读次数:
50
区间dp:在区间上进行动态规划,求解一段区间上的最优解。主要是通过合并小区间的最优解进而得出整个大区间上最优解的dp算法。 (此句抄袭这里:https://blog.csdn.net/qq_40772692/article/details/80183248) 例题:石子合并 【问题描述】 将n(1≤ ...
分类:
其他好文 时间:
2020-03-03 00:43:02
阅读次数:
82
没有要求输出最优解: 题目链接:http://ybt.ssoier.cn:8088/problem_show.php?pid=1265 1 #include<bits/stdc++.h> 2 using namespace std; 3 char x[1005], y[1005]; 4 int lx ...
分类:
其他好文 时间:
2020-02-28 23:08:46
阅读次数:
121
http://47.95.147.191/contest/6/problem/A这个题气其实是比较巧妙的。如果选了第3个,就不能选2,4。假设3是最大的,如果选2必选4,选2了却不选4那么不如选3.如果最优解是选2,4,但是贪心的时候选了3,怎么弥补呢?把a[3]=a[2]+a[4]-a[3]再放到 ...
分类:
Web程序 时间:
2020-02-26 20:58:39
阅读次数:
98
思想:不断选取当前最优策略 区别:与上一篇所讲的动态规划有所不同,动态规划是指在多种策略下选取最优解,而贪心法只有一种策略。 例题一: 硬币问题 Description 有1元、5元、10元、50元、100元、500元的硬币各C1、C5、C10、C50、C100、C500枚。现在要用这些硬币来支付A ...
分类:
其他好文 时间:
2020-02-25 00:23:23
阅读次数:
100