UVA 1149 Bin Packing 装箱(贪心)
每次选最大的物品和最小的物品放一起,如果放不下,大物体孤独终生,否则相伴而行。。。
答案变得更优是因为两个物品一起放了,最大的物品是最难匹配的,如果和最小的都放不下的话,和其它匹配也一定放不下了。
#include<bits/stdc++.h>
using namespace std;
const int maxn = 1e5+;
int a[maxn]; template<class T>
inline void scan_d(T *ret)
{
char c;*ret=;
while((c=getchar())<''||c>'');
while(c>=''&&c<='') { *ret = *ret*+(c-''); c = getchar();}
} int main()
{
int T; scan_d(&T);
while(T--){
int n,L; scan_d(&n); scan_d(&L);
for(int i = ; i < n; i++) scan_d(a+i);
sort(a,a+n);
int i = ,j = n-;
int ans = n; while(i<j){
if(a[i] <= L-a[j]){
i++; j--; ans--;
} else {
j--;
} printf("%d\n",ans);
if(T)putchar('\n');
}
return ;
}
UVA 1149 Bin Packing 装箱(贪心)的更多相关文章
- UVA 1149 Bin Packing 二分+贪心
A set of n 1-dimensional items have to be packed in identical bins. All bins have exactly the samele ...
- UVa 1149 Bin Packing 【贪心】
题意:给定n个物品的重量l[i],背包的容量为w,同时要求每个背包最多装两个物品,求至少要多少个背包才能装下所有的物品 和之前做的独木舟上的旅行一样,注意一下格式就好了 #include<ios ...
- UVA - 1149 Bin Packing(装箱)(贪心)
题意:给定N(N<=10^5)个物品的重量Li,背包的容量M,同时要求每个背包最多装两个物品.求至少要多少个背包才能装下所有的物品. 分析:先排序,从最重的开始装,如果重量小于M,则如果能装一个 ...
- uva 1149:Bin Packing(贪心)
题意:给定N物品的重量,背包容量M,一个背包最多放两个东西.问至少多少个背包. 思路:贪心,最大的和最小的放.如果这样都不行,那最大的一定孤独终生.否则,相伴而行. 代码: #include < ...
- UVA 1149 Bin Packing
传送门 A set of n 1-dimensional items have to be packed in identical bins. All bins have exactly the sa ...
- 高效算法——Bin Packing F - 贪心
Time Limit:3000MS Memory Limit:0KB 64bit IO Format:%lld & %llu Submit Status Descripti ...
- UVA-1149 Bin Packing (贪心)
题目大意:给定n个物品的重量,无限个容量为m的箱子,每个箱子最多装两个物品,要把所有的物品都装下,最少需要多少个箱子. 题目分析:贪心策略:每次将最重和最轻的两个物品放到一个箱子里,如果装不下,则将最 ...
- UVa 102 - Ecological Bin Packing(规律,统计)
题目来源:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=3&pa ...
- UVa - 102 - Ecological Bin Packing
Background Bin packing, or the placement of objects of certain weights into different bins subject t ...
随机推荐
- VS2015中使用Git遇到问题 Cannot do push / pull in git - working with visual studio
I have made a lot of changes, when I am trying to push them - I am getting the next error: You canno ...
- 使用go实现基于命令行的计算器程序
项目目录结构 calcs.go源文件 package main import ( "fmt" "os" "strconv" "my ...
- The web.config file for this project is missing the required DirectRequestModule.
The web.config file for this project is missing the required DirectRequestModule. 将应用程序集的模式由集成改为经典 ...
- 使用gRPC搭建Server端与Client端
gRPC简介 gRPC是一种RPC框架技术,采用Protocal Buffers(协议缓存) 作为其接口定义的语言(就是Proto来写接口)和基础的消息交换格式. 在gRPC中,客户端应用程序可以直接 ...
- udp通信的消息处理方案
0.引言 大家都知道当使用udp通信时,最大的一个问题是会出现丢包的情况,那么如何可以既使用udp来传输,又同时能有效防止丢包呢? 本文提供一种简单有效的方法,可以显著避免udp丢包的问题.此外,如果 ...
- xrange与range之间的区别
对于这两个好像功能都差不多,这两个经常会被搞混,所以今天一定要把这个完全弄清楚. 首先我们看看range: range([start,] stop[, step]),根据start与stop指定的范围 ...
- scrapy爬取数据的基本流程及url地址拼接
说明:初学者,整理后方便能及时完善,冗余之处请多提建议,感谢! 了解内容: Scrapy :抓取数据的爬虫框架 异步与非阻塞的区别 异步:指的是整个过程,中间如果是非阻塞的,那就是异步 ...
- 1366 - Incorrect string value:'\xE5\xBC\xA0\xE4\xB8\x89' for column 'name' a 错误修改
把name的字符集修改成 utf8 ,然后把表关了从新打开,就可以了 如果还不行,就从新创表,在创表的时候修改name的字符集 如果还不行,就修改my.ini 它在你的mysql安装路径里 [mysq ...
- jsf+ejb
jsf+ejb 示例 http://docs.jboss.org/jbossas/docs/Installation_And_Getting_Started_Guide/5/html/Sample_J ...
- Mac中文输入法无选字框了?
按F4键,把其它中的活动监视器打开,选简体中文输入法进程,双击点退出 ,再点强制退出,关了吧.再打字,好用了-