首页 > 装货物
头像 Kur1su
发表于 2020-08-18 15:05:45
Description 有 n 件货物, 第 i 件重 吨,另有 x 个集装箱,每个集装箱可以装重量不超过 W 吨的货物。货物不能分拆,请判断这 x 个集装箱能否装下所有货物。 Solution , 考虑搜索,由于货物不能拆分,于是我们所需要的集装箱最多需要 个,那么我们可以预处理出 个容量为 展开全文
头像 sunrise__sunrise
发表于 2020-08-19 09:31:13
Solution 题意:给你n个物品,n<21,再给你最多装w的箱子,箱子有x个。第二行给出n个物品的重量,问能不能用x个箱子把这n个物品全部放进去,物品不能够分隔。 暴力DFS,数据范围w,x,以及单个物品重量都达到了1e9的大小,但是看到物品只有21个,并且不能拆分,就知道最多也就安排21 展开全文
头像 zzugzx
发表于 2020-08-18 13:53:52
题目链接 题意:题解:AC代码 /* Author : zzugzx Lang : C++ Blog : blog.csdn.net/qq_43756519 */ #include<bits/stdc++.h> using namespace std; #def 展开全文
头像 sunsetcolors
发表于 2020-08-18 14:22:07
装货物 题目地址: https://ac.nowcoder.com/acm/problem/200532 基本思路: 先看数据范围,的数据不会超过组。但是这个的范围实际上是无效的,因为我们不可能一件物品分给多个集装箱,所以我们考虑一些较为暴力的算法,我们考虑暴力,每次过程考虑将当前货物分给哪 展开全文
头像 issue是云哥的小迷×呀
发表于 2020-08-18 12:59:32
#include <bits/stdc++.h> using namespace std; int n,x,w,kk,a[109],s[109],flag; bool com(int q,int w){ return q>w; } void dfs(int num,int 展开全文
头像 lifehappy
发表于 2020-08-18 14:06:33
装货物 思路 显然对每个物品我们有两种操作,与已经放好了的放在一起,或者新开一个盒子来放,由于数据比较小,我们可以直接稍加剪纸的爆搜即可。 第一个优化,当的时候立即返回。第二个优化,给定的序列从大到小排个序,这样我们就能保证后面的决策会较少的重复利用前面已经放号的盒子,减少回溯成本。 代码 /* 展开全文
头像 hnust_yangyanjun
发表于 2020-08-21 10:53:29
题意:有n件货物,每件货物有一个重量,我们有x个承重为w的箱子,求是否能全部装上? 思路:dfs暴搜:先将货物重量从大到小排序,这样可以降低解空间。dfs时箱子使用个数不超过当前物品数,因为超过没有意义。 代码: #include <bits/stdc++.h> typedef long 展开全文
头像 dilingtian
发表于 2022-11-02 20:07:39
有 n 件货物, 第i件重wiw_iwi​吨,另有 x 个集装箱,每个集装箱可以装重量不超过 W 吨的货物。 货物不能分拆,请判断这 x 个集装箱能否装下所有货物。 n的数据很小,所以可以考虑爆搜 AC代码 #include <bits/stdc++.h> using namespace 展开全文
头像 Cur1ed
发表于 2020-08-19 17:17:24
这个题就是蓝书上边的小猫爬山和假日团队赛48的A题的升级版啊...搜索+剪枝的思想 首先判断是否有一个物品的重量超过了箱子的承重,有的话就输出No,否则继续往下。 将这个题变为最少需要的箱子个数是否小于等于m个。dfs(x,sum)为第x个货物分配过程(前x-1个货物已经分配好了,用了s 展开全文
头像 18duangduang
发表于 2020-07-06 19:23:54
#Robot Sends Red Packets > https://ac.nowcoder.com/acm/contest/8829/E n个硬币分成若干堆,每堆硬币的价值相同,求最堆最小价值的分配方案。 思路:三层dfs剪枝. #include<bits stdc++.h> 展开全文

等你来战

查看全部