- 博客(53)
- 收藏
- 关注

原创 关于动态规划问题的整理
动态规划知识点 题目名称 网页链接 01背包问题 采药 https://www.luogu.com.cn/problem/P1048
2023-07-21 11:13:22
92
原创 关于拓扑排序
2.我们首先要输出的就是入度为0的点,然后依次删除这些点连向的点,使这些点的入度-1,如果这些点入度此时变为了0,那么就放进刚才入度为0的集合当中。又重新学了一下拓扑排序,这次发现就十分简单了,拓扑排序的步骤。1.他必须是一个有向无环图,起点我们就是入度为0的点。3.现在只需要输出这个集合就可以了。
2023-08-02 20:24:58
463
原创 DFS之连通性--迷宫
思路:就是通过dfs进行搜索,看是否能从给定的起点到给定的终点,当然也可以用bfs写,这里用到dfs写的。切记不要忘记每次重置st数组,保证标记的准确性。
2023-08-02 10:02:24
288
原创 超出背包限制--潜水员
本题和之前的二维背包差不多,但是它可以做到超出体积的限制,本质上我们的状态转移方程其实和之前的差不多,f[i][j]=min(f[i-1][j],f[i-1][j-v]+w),超出的体积应该如何去计算,我们可以利用负数去计算,也就是i-v1<0||j-v2<0但是这样会造成数组越界,我们只需要让他们呢和0比较即可,f[max(0,i-v1)][max(0,j-v2)+w]。本质上就是只要超过氧气,氮气的含量,不管多少,直接和f[0][0]比较,得到的就是当前最小的重量。
2023-08-02 09:34:50
375
原创 多重背包二进制优化
二进制优化的精髓就在于选择物品的次数,比如有s==7,我们可以分为1,2 ,4(二进制形式),1就代表选择一个货物,2代表两个,4代表4个,那么s==10时可能会剩个3我们只需要在后边补上即可,每一次选择几个就是几个的价值(4个就是4个的价值)可以将混合背包看作是一个特殊的多重背包,只要转化一下即可,将s==-1转为1s==0转化为m/v(最大可能装下的货物);
2023-07-31 10:54:14
306
原创 背包逆推--数字组合
这个题我们进行Y氏DP分析得到,求得的集合为等于m的数量,那么属性就是count(数量)进行状态计算,一边是关于不选第i个物品的所有方案,一边是关于选第i个物品的方案。
2023-07-28 15:33:14
136
原创 01背包问题-采药(洛谷P1048)
3.填充完集合和属性之后,我们通过分析可以得到,从0~i挑出<=j的草药来实现价值,每次取完都和a[i-1][j](i-1的意思就是我当前不去取这个草药,那这个地方a[i][j]是空的,不能自己取自己,那样完全没意义,所以我们引用a[i-1][j]来表示[这个是为了好记忆,并不是真的])进行比较。1.集合的划分,我们可以知道这个药他可以采也可以不采,也就说明现在集合中有两个元素。5.我们最后就可以在最后的地方:dp[n][m]中取得最大值。只考虑前i个物品,总容量不超过T的选法,然后求最大值。
2023-07-21 10:49:56
183
原创 Python(实验3 数据科学计算)
③统计并输出每列中包含的空值的数量;(2)通过字典对象{“a”:10, “b”:101, “c”:62, “d”:102}创建Series对象s1,要求元素按照如下索引值顺序存储: “c”, “b”, “a”,“d”,并完成:①输出s1中大于平均值(所有元素)的元素;(1)通过列表对象[[1,2,3,4],[5,6,7,8]]构建numpy的ndarray对象,并分别进行如下操作:①对数组对象进行水平分割和垂直分割,输出每一步的计算结果;③统计出所有“同比”大于120且“环比”大于101.3的城市的名字。
2023-05-18 17:55:55
267
原创 计算机操作系统(实验6 请求分页系统模拟)
计算机操作系统实验,程序实现先进先出算法(FIFO)、最近最久未使用算法(LRU)算法、最佳置换算法(OPT)、时钟置换算法的具体实现过程,并计算访问命中率。(选择2-3个算法实现)最佳置换算法是不能实现的,所以我们选择了其他三个算法,如果大家想要原理的话可以直接去搜:计算机操作系统页面置换算法。3、进一步提高系统程序设计能力和创新能力。1、进一步理解请求分页系统的运行原理;2、掌握请求分页系统中的页面置换算法;1.设计主界面以灵活选择某算法。2. 用随机数方法产生页面走向。3. 假定初始时页面都不在内存。
2023-05-18 17:23:32
660
2
原创 Educational Codeforces Round 148 (Rated for Div. 2)
5 4 2 1 0 0 4,我们先判断是单调递增还是单调递减,我们看出这组序列先是单调递减的,我们找到转折点可以看到是0 4,所以我们可以得出5 0 4就是这个b的最小长度所产生的数列。第二个题:【赛后补题】前缀和加一个类似双指针的寻找最小值的操作,题目要求的是最大值,就可以用前缀和统计出来的sum减去这个最小值就能得到最大值【实质:纯暴力】4 2我们判断是递减的,也是2,对于 1 1 1 1这个是不单调的,所以我们只需要输出一即可。第一个题:没有看到给出的是回文,结果在那判断回文,导致WA两发。
2023-05-17 16:15:25
267
原创 明明的随机数(set)
NOIP2006]明明的随机数题号:NC16669时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 262144K,其他语言524288K。
2022-08-28 19:52:57
159
原创 数字三角形问题(动态规划)
G . 数字三角形问题Description给定一个由nn行数字组成的数字三角形如下图所示。试设计一个算法,计算出从三角形的顶至底的一条路径,使该路径经过的数字总和最大。对于给定的由nn行数字组成的数字三角形,计算从三角形的顶至底的路径经过的数字和的最大值。Input第1 行是数字三角形的行数nn,1≤n≤1001≤n≤100。接下来nn行是数字三角形各行中的数字。所有数字在0..99之...
2022-04-20 19:53:03
9933
4
原创 一元三次方程求解
题目描述有形如:ax3+bx2+cx+d=0 这样的一个一元三次方程。给出该方程中各项的系数(a,b,c,d 均为实数),并约定该方程存在三个不同实根(根的范围在-100至100之间),且根与根之差的绝对值>=1。要求三个实根。输入四个实数:a,b,c,d输出由小到大依次在同一行输出这三个实根(根与根之间留有空格),并精确到小数点后2位题解:就是第一次用i来判断他是否是解;然后再从间隔为1中的小数来进行求解,看是否又满足的小数解;#include<b
2022-04-12 23:48:35
501
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人