POJ1017贪心
题意:小P开了一家淘宝店铺,店铺里所有的商品高度都为h,但长和宽分别为1*1,2*2,3*3,4*4,5*5,6*6六种规格。这一天来了一个大客户,他订购了很多物品。所以小P需要将东西都邮寄给他,但是小P只有高度为h,长宽为6*6的箱子,小P想知道自己最少需要用多少个箱子,才能把客户需要的所有物品都寄过去?(多组输入,遇到0 0 0 0 0 0结束)
题解:贪心的大水题,只要把握好从大到小放入箱子的同时,尽可能将箱子放满即可。
#include<stdio.h>
#include<algorithm>
#include<iostream>
using namespace std;
const int inf = 0x3f3f3f3f;
typedef long long ll;
int n[];
int main(void)
{
ios::sync_with_stdio(false);
while (cin >> n[] >> n[] >> n[] >> n[] >> n[] >> n[])
{
int flag = ;
for (int i = ; i <= ; i++)
{
if (n[i] != )
flag = ;
}
if (flag == )break;
int ans = ;
ans += n[];
if (n[] > )
{
ans += n[];
n[] -= n[] * ;
if (n[] < )n[] = ;
}
if (n[] > )
{
ans += n[];
if (n[] >= n[] * )
n[] -= n[] * ;
else
{
int n1 = * n[] - n[] * ;
n[] = ;
n[] -= n1;
if (n[] < )n[] = ;
}
}
if (n[] > )
{
if (n[] % == )
ans += (n[] / );
else
{
ans += (n[] / ) + ;
n[] = n[] % ;
if (n[] == )
{
if (n[] >= )
{
n[] -= ;
n[] -= ;
if (n[] < )n[] = ;
}
else
{
n[] -= ( - n[] * );
n[] = ;
if (n[] < )n[] = ;
}
}
if (n[] == )
{
if (n[] >= )
{
n[] -= ;
n[] -= ;
if (n[] < )n[] = ;
}
else
{
n[] -= ( - n[] * );
n[] = ;
if (n[] < )n[] = ;
}
}
if (n[] == )
{
if (n[] >= )
{
n[]--;
n[] -= ;
if (n[] < )n[] = ;
}
else
{
n[] -= ( - n[] * );
n[] = ;
if (n[] < )n[] = ;
}
}
}
}
if (n[] > )
{
if(n[]%==)
ans += n[] / ;
else
{
ans += n[] / + ;
n[] = n[] % ;
n[] -= ( - n[] * );
n[] = ;
if (n[] < )n[] = ;
}
}
if (n[] > )
{
if(n[]%==)
ans += n[] / ;
else
ans += n[] / + ;
}
cout << ans << endl;
}
return ;
}
POJ1017贪心的更多相关文章
- poj-1017 Packets (贪心)
http://poj.org/problem?id=1017 工厂生产高度都为h,长和宽分别是1×1 2×2 3×3 4×4 5×5 6×6的6种规格的方形物品,交给顾客的时候需要包装,包装盒长宽高都 ...
- 【贪心算法】POJ-1017
一.题目 Description A factory produces products packed in square packets of the same height h and of th ...
- 装箱问题,贪心(POJ1017)
题目链接:http://poj.org/problem?id=1017 解题报告: #include<stdio.h> int main() { int n,a,b,c,d,e,f,x,y ...
- POJ1017 【据说是贪心...】
题意: 有6种面积的格子,给出这些格子的数量,然后有6*6的格子去容纳这6种面基,问最少需要几个6*6格子,使得所有类型的小格子被容纳. 思路: 按照面积的从大到小放. 一开始还是太天真,还要用各种1 ...
- POJ1017 Packets---贪心
题目链接: https://vjudge.net/problem/POJ-1017 题目大意: 公司共有底面面积为1*1.2*2.3*3.4*4.5*5.6*6,高度同为H的六种产品,现在需要用最少的 ...
- 《挑战程序设计竞赛》2.2 贪心法-其它 POJ3617 3069 3253 2393 1017 3040 1862 3262
POJ3617 Best Cow Line 题意 给定长度为N的字符串S,要构造一个长度为N的字符串T.起初,T是一个空串,随后反复进行下列任意操作: 从S的头部(或尾部)删除一个字符,加到T的尾部 ...
- BZOJ 1692: [Usaco2007 Dec]队列变换 [后缀数组 贪心]
1692: [Usaco2007 Dec]队列变换 Time Limit: 5 Sec Memory Limit: 64 MBSubmit: 1383 Solved: 582[Submit][St ...
- HDOJ 1051. Wooden Sticks 贪心 结构体排序
Wooden Sticks Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) To ...
- HDOJ 1009. Fat Mouse' Trade 贪心 结构体排序
FatMouse' Trade Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...
随机推荐
- SQL手工注入绕过过滤
1.考虑闭合:单引号 --> %27 空格-->%20 井号--> %23 : 构造闭合函数 %27teacher%23 2.判断过滤内容:union --> uniu ...
- FTP配置多用户多目录多权限
环境介绍 根据开发的需求 要求创建FTP服务器,把前端和后端分开用不同的FTP账号 系统环境 centos 7.4 selinux 关闭 防火墙关闭 安装FTP 很简单就一条命令 yum instal ...
- Spark Streaming + Kafka Integration Guide原文翻译及解析
前面写了关于kafka和spark streaming的结合使用(https://www.cnblogs.com/qfxydtk/p/11662591.html),其具体使用用法其实来自于原文:htt ...
- 【福利】FL Studio 20 汉化补丁包 _FL Studio 20 汉化包下载
我这两天在网上搜索FL Studio 20汉化包,找了半天也没有找到真正的汉化包,不过好在功夫不负有心人,让我找到了一个不错的FL Studio 20汉化网站,里面提供了FL Studio 20汉化包 ...
- 【MySQL】究竟什么是MVCC呢?
MVCC是什么呢? MVCC其实就是一个多版本并发控制,即多个不同版本的数据实现并发控制的技术,其基本思想是为每次事务生成一个新版本的数据, 在读数据时选择不同版本的数据即可以实现对事务结果的完整性读 ...
- Uint47 calculator【map数组+快速积+各种取余公式】
Uint47 calculator 题目链接(点击) In the distant space, there is a technologically advanced planet. One day ...
- c常用函数-strlwr 和 strupr
strlwr 和 strupr strlwr的功能是把一个字符串全部变成小写, strupr的功能则是把一个字符串全部变成大写.语法结构分别如下: Action() { char test[] = & ...
- 错误处理函数-lr_continue_on_error
在脚本的Run-time Settings中,可以设置在脚本运行过程中发生错误的处理方式.进入到Run-time Settings中,切换到Miscellaneous标签页,可以看到Error Han ...
- SpringMVC整合mybaitis
目录 一.新建一个基于Maven的Web项目 二.创建数据库与表 三.添加依赖包 四.新建POJO实体层 五.新建MyBatis SQL映射层 六.完成Spring整合MyBatis配置 七.创建服务 ...
- Ray射线检测和Recources.Load
记录射线检测常用的方法,以及Rocources.Load的常用用法 使用代码实现鼠标点击在鼠标点击处生成制定gameObject RayCastHit hit; void Update() { Ray ...