
算法
ycl010203
这个作者很懒,什么都没留下…
展开
-
0/1背包问题一维逆序解释
01背包问题有n件物品,每件物品的重量为w[i],价值为c[i]。现有容量为V(重量)的背包,问如何选取物品放入背包,使得背包内物品的总价值最大令dp[i][v]表示表示前i件物品恰好装入容量(重量)为v的背包中所能获得的最大价值*状态转移方程:dp[i][v]=max(dp[i-1][v],dp[i-1][v-w[i]]+c[i])条件:1<=i<=n,w[i]&l...原创 2020-02-26 15:17:30 · 623 阅读 · 0 评论 -
汉诺塔问题
hanoi塔问题设a、b、c是3个塔座。开始时,在塔座a上有一叠共n个圆盘,这些圆盘自下而上,由大到小地叠放在一起,各圆盘从小到大编号为1,2,……,n如图所示。先要将塔座a上的这一叠圆盘移到塔座b上,并仍按同样顺序叠置。在移动圆盘时应该遵守以下,移动规则 规则1:每次只能移动一个圆盘 规则2:任何时刻都不允许将较大的圆盘压在较小的圆盘之上。规则3:在满足移动规则1和2的前提下,可将圆盘移动到a、...原创 2020-01-14 19:19:41 · 795 阅读 · 0 评论 -
整数划分问题将正整数n表示成一系列正整数之和
整数划分问题将正整数n表示成一系列正整数之和,n=n1+n2+……+nk n1>=n2>=………>=nk>=1;k>=1正整数n的划分数,记为p(n)。例如正整数6有如下11种不同的划分,所以p(6)=11在最大加数n1不大于m的划分个数记作q(n,m)。 q(n,m)=1, 当n=1,m=1;q(n,m)=q(n,n) 当n<m; q(n,m)=1...原创 2020-01-14 13:47:02 · 7930 阅读 · 0 评论 -
递归实现全排列
排列问题设R={r1,r2,…,rn}是要进行排列的n个元素*Ri=R-{ri} 集合x中元素的全排列,记为Perm(X)。(ri)Perm(X)表示在全排列Perm(X)的每排列前加上前缀ri得到的排列R的全排列可归纳定义如下 当n=1时,Perm®=®,其中r是集合R中的唯一元素当n>1时,Perm®由(r1)Perm(R1),(r2)Perm(R2)……(rn)Perm(Rn)构成#...原创 2020-01-14 10:43:18 · 214 阅读 · 0 评论 -
最多约数问题问题描述:正整数x的约数是能整除x的正整数。正整数的约数个数记为div(x),例如,1,2,5,10都是正整数10的约数,且div(10)=4
最多约数问题问题描述:正整数x的约数是能整除x的正整数。正整数的约数个数记为div(x),例如,1,2,5,10都是正整数10的约数,且div(10)=4。设a和b是2个正整数,a<=b,找出a和b之间约数个数最多的数算法设计:对于给定的2个正整数a<=b,计算a和b之间约数个数最多的数数据输入:输入数据由文件名为input.txt提供。文件的第一行有两个正整数a和b结果输出:若找到a...原创 2020-01-14 09:31:08 · 3997 阅读 · 0 评论 -
算法设计:对于给定的长度不超过6的升序字符串,计算它在上述字典中的编码
算法设计:对于给定的长度不超过6的升序字符串,计算它在上述字典中的编码数据输入:输入数据由文件名为input.txt提供。文件的第一行是一个正整数k,表示接下来有K行。在接下来的k行中,每行给出一个字符串结果输出:将计算结果输出到文件output.txt。文件共有k行,每行对应一个字符串编码| 1 |2| `| 26 |28 || a| b ||ab```|ac |#include<...原创 2020-01-13 21:18:26 · 1277 阅读 · 1 评论 -
给定表示书的总页码的十进制整数n计算书的全部页码中分别用到多少次数字0,1,2,3,4,5,6,7,8,9
算法设计:给定表示书的总页码的十进制整数n(1<=n<=10^9)计算书的全部页码中分别用到多少次数字0,1,2,3,4,5,6,7,8,9数据输入:输入数据由文件名为input.txt提供。每个文件只有一行,给出表示总页码总数结果输出将计算结果输出到文件output.txt输出文件共10行,在第K行输出页码中用到数字K-1的次数*/#include<iostream>...原创 2020-01-13 19:37:10 · 2733 阅读 · 3 评论