- 博客(8)
- 收藏
- 关注
原创 蓝桥杯 算法训练 粘木棍
问题描述 有N根木棍,需要将其粘贴成M个长木棍,使得最长的和最短的的差距最小。输入格式 第一行两个整数N,M。 一行N个整数,表示木棍的长度。输出格式 一行一个整数,表示最小的差距样例输入3 210 20 40思路如下: N根木棍放到M组,并没有规定每组不可以为空,所以可以用dfs枚举每一种情况,将每种可能的差值进行比较,保留最小差值。 假设木棍一根根放在地上,我们是顺着一个方向依次枚举木棍的存放可能,故不会出现重复用到一根...
2022-03-16 12:49:13
416
原创 蓝桥杯 算法训练 无聊的逗 简单版C++
问题描述 逗志芃在干了很多事情后终于闲下来了,然后就陷入了深深的无聊中。不过他想到了一个游戏来使他更无聊。他拿出n个木棍,然后选出其中一些粘成一根长的,然后再选一些粘成另一个长的,他想知道在两根一样长的情况下长度最长是多少。输入格式 第一行一个数n,表示n个棍子。第二行n个数,每个数表示一根棍子的长度。输出格式 一个数,最大的长度。样例输入41 2 3 1样例输出3 起初看到题目,想了许久仍是没有思路,看了一位大佬用dp做的思路,深受启发...
2022-03-14 23:34:29
721
5
原创 N皇后问题-回溯法
问题描述 在N*N的方格棋盘放置了N个皇后,使得它们不相互攻击(即任意2个皇后不允许处在同一排,同一列,也不允许处在与棋盘边框成45角的斜线上。你的任务是,对于给定的N,求出有多少种合法的放置方法。输入格式 输入中有一个正整数N≤10,表示棋盘和皇后的数量输出格式 为一个正整数,表示对应输入行的皇后的不同放置数量。样例输入5样例输出10思路:从第一个点开始枚举所有可能,判断当前位置是否可以存放一个皇后,若可以则进入下一行继...
2022-03-11 14:36:32
1401
原创 蓝桥杯 算法训练 完全背包问题
最近刚开始刷dp的题目,留下这篇文章以作纪念。dp[i][j]的含义为前0~i个物品放到容量j的背包里的最大价值首先,容量为0以及物品数量为0的情况价值必定为0所以我们可以初始化dp数组的第一行以及第一列的值为0dp[i][j]的可以分两种情况讨论: 1.不选择物品i,那么价值为0~i-1个物品放入容量j的背包的最大价值,即dp[i-1][j] 2.选择物品i,物品i可选择k个,k个i物品为的价值为v[i]*k,剩下的容量j-k*w[i]装入0~i-...
2022-03-07 19:07:13
393
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人