TC598 div2
2024-10-15 17:40:18
题意:给一些物品item[],这些物品的重量在101至300之间,要将这些物品全部放进若干个bins中,已知bins盛的重量为300,可以将bins装满也可以不装满,
问放这些物品最少需要几个bins.
思路:当时把最关键的地方忽略了,就是物品的重量在101至300之间,这就说明每个bins至多放2个物品。然后从小到大排序,倒着贪心就可以了。
#include<stdio.h>
#include<stack>
#include<string.h>
#include<iostream>
#include<algorithm>
#include<vector>
using namespace std; class BinPackingEasy
{
private:
int count;
public:
int minBins(vector <int> item)
{
count = ;
int j;
int len = item.size();
int vis[len+];
memset(vis,,sizeof(vis));
sort(item.begin(),item.end());
for(int i = len-; i >= ; i--)
{
if(vis[i]) continue;
vis[i] = ;
for(j = i-; j >= ; j--)
{
if(item[i] + item[j] <= && !vis[j])
{
vis[j] = ;
count++;
break;
}
}
if(j == -)
count++;
}
for(int i = ; i < len; i++)
if(!vis[i])
count++;
return count;
}
};
最新文章
- winform下如何实现右下角弹窗效果
- [课程设计]任务进度条&;开发日志目录
- N个节点的二叉树有多少种形态
- Python学习笔记(迭代、模块扩展、GUI 、编码处理等)
- phone number is not known @w@ have no phone, and thus no phone number
- django ORM model filter 条件过滤,及多表连接查询、反向查询,某字段的distinct
- Hive基础之COALESCE用法
- 纵观minecraft 游戏作者的世界观
- 电商ERP常见功能模块
- bzoj 2244: [SDOI2011]拦截导弹 cdq分治
- Cubieboard编译安装NodeJS经验总结
- [r]Ubuntu Linux系统下apt-get命令详解
- sqlserver05 字符串拆分
- Oracle的sessions和processes的数计算公式
- Bash 常用快捷键(转)
- Python网络爬虫与信息提取(三)—— Re模块
- 论文笔记:Mask R-CNN
- SpringBoot的学习【3.HelloWorld配置细节】
- forget suffix word aby able ability out 1
- WebBrowser中html元素如何触发winform事件
热门文章
- C语言之指针1.1数组
- html中可以使用在块级元素<;body>;中的元素
- maven使用之烦人的.lastUpdated文件
- UVA 11549 CALCULATOR CONUNDRUM(Floyd判圈算法)
- C++模板学习随笔
- Cocos2d-x 3.0坐标系详解(转载)
- ASP.NET中的特殊路径标识";~";
- 设计模式之开篇(C#语法)
- thinkphp 缓存写入失败,网站报错
- 诡异的XmlSerializer属性字段Specified