poi 1017 Packets 贪心+模拟
Time Limit: 1000MS | Memory Limit: 10000K | |
Total Submissions: 48349 | Accepted: 16392 |
Description
of the expenses it is the interest of the factory as well as of the customer to minimize the number of parcels necessary to deliver the ordered products from the factory to the customer. A good program solving the problem of finding the minimal number of parcels
necessary to deliver the given products according to an order would save a lot of money. You are asked to make such a program.
Input
size 6*6. The end of the input file is indicated by the line containing six zeros.
Output
``null'' line of the input file.
Sample Input
0 0 4 0 0 1
7 5 1 0 0 0
0 0 0 0 0 0
Sample Output
2
1
Source
<span style="font-size:32px;">#include <iostream>
#include<cstdio>
#include<queue>
#include<algorithm>
#include<cstring>
#define inf 0x3f3f3f3f
using namespace std;
typedef long long ll;
int a[8],u[4]={0,5,3,1};
int main()
{
while(~scanf("%d%d%d%d%d%d",&a[1],&a[2],&a[3],&a[4],&a[5],&a[6]))
{
if(!a[1]&&!a[2]&&!a[3]&&!a[4]&&!a[5]&&!a[6])
return 0;
int cnt=a[6]+a[5]+a[4]+(a[3]+3)/4;/*先装好能“独当一面的”大快 递物品,初步确定至少要的箱子数目/
int t2=a[4]*5+u[a[3]%4];/*确定好再上一行代码的情况下,能额外放 入2*2物品的数目*/
if(a[2]>t2)
cnt+=(a[2]-t2+8)/9;/*需要为a[2]单独再开箱子*/
int t1=cnt*36-a[6]*36-a[5]*25-a[4]*16-a[3]*9-a[2]*4;/*补a[1]*/
if(a[1]>t1)
cnt+=(a[1]-t1+35)/36;
printf("%d\n",cnt);
}
return 0;
}
</span>
最后附上本人起初写的wrong
answe代码,一步一步暴力。。
#include <iostream>
#include<cstdio>
#include<queue>
#include<algorithm>
#include<cstring>
#define inf 0x3f3f3f3f
using namespace std;
typedef long long ll;
int a[8];
int main()
{
while(~scanf("%d%d%d%d%d%d",&a[1],&a[2],&a[3],&a[4],&a[5],&a[6]))
{
if(a[1]+a[2]+a[3]+a[4]+a[5]+a[6]==0)
return 0;
int cnt=a[6]+a[5]+a[4];
a[1]-=a[5]*11;
a[2]-=a[4]*5;
int t3=(a[3]-1+4)/4;
cnt+=t3;
if(a[3]%4!=0)
{
int yu=4-a[3]%4;
if(yu==3)
{
if(a[2]>0)
if(a[2]>=5)
{
a[2]-=5;
a[1]-=7;
}
else
{
a[1]-=27-a[2]*4;
a[2]=0;
}
}
else if(yu==2)
{
if(a[2]>0)
if(a[2]>=3)
{
a[2]-=3;
a[1]-=6;
}
else
{
a[1]-=12-a[2]*4;
a[2]=0;
}
}
else if(yu==1)
{
if(a[2]>=1)
{
a[2]-=1;
a[1]-=3;
}
else
a[1]-=9;
}
}
if(a[2]>0)
{
cnt+=(a[2]-1+9)/9;
a[2]%=9;
a[1]-=36-a[2]*4;
}
if(a[1]>0)
{
cnt+=(a[1]-1+36)/36;
}
printf("%d\n",cnt);
}
return 0;
}
poi 1017 Packets 贪心+模拟的更多相关文章
- UVA 311 Packets 贪心+模拟
题意:有6种箱子,1x1 2x2 3x3 4x4 5x5 6x6,已知每种箱子的数量,要用6x6的箱子把全部箱子都装进去,问需要几个. 一开始以为能箱子套箱子,原来不是... 装箱规则:可以把箱子都看 ...
- Poj 1017 Packets(贪心策略)
一.题目大意: 一个工厂生产的产品用正方形的包裹打包,包裹有相同的高度h和1*1, 2*2, 3*3, 4*4, 5*5, 6*6的尺寸.这些产品经常以产品同样的高度h和6*6的尺寸包袱包装起来运送给 ...
- poj 1017 Packets 贪心
题意:所有货物的高度一样,且其底面积只有六种,分别为1*1 2*2 3*3 4*4 5*5 6*6的,货物的个数依次为p1,p2,p3,p4,p5,p6, 包裹的高度与货物一样,且底面积就为6*6,然 ...
- POJ:1017-Packets(贪心+模拟,神烦)
传送门:http://poj.org/problem?id=1017 Packets Time Limit: 1000MS Memory Limit: 10000K Total Submissions ...
- 贪心+模拟 Codeforces Round #288 (Div. 2) C. Anya and Ghosts
题目传送门 /* 贪心 + 模拟:首先,如果蜡烛的燃烧时间小于最少需要点燃的蜡烛数一定是-1(蜡烛是1秒点一支), num[g[i]]记录每个鬼访问时已点燃的蜡烛数,若不够,tmp为还需要的蜡烛数, ...
- 贪心+模拟 ZOJ 3829 Known Notation
题目传送门 /* 题意:一串字符串,问要最少操作数使得成为合法的后缀表达式 贪心+模拟:数字个数 >= *个数+1 所以若数字少了先补上在前面,然后把不合法的*和最后的数字交换,记录次数 岛娘的 ...
- CodeForces ---596B--Wilbur and Array(贪心模拟)
Wilbur and Array Time Limit: 2000MS Memory Limit: 262144KB 64bit IO Format: %I64d & %I64u Su ...
- poj 1017 Packets 裸贪心
Packets Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 43189 Accepted: 14550 Descrip ...
- POJ 1017 Packets【贪心】
POJ 1017 题意: 一个工厂制造的产品形状都是长方体,它们的高度都是h,长和宽都相等,一共有六个型号,他们的长宽分别为 1*1, 2*2, 3*3, 4*4, 5*5, 6*6. 这些产品通常 ...
随机推荐
- Spring 注解介绍
@Component与@Bean的区别 @Component注解表明一个类会作为组件类,并告知Spring要为这个类创建bean. @Bean注解告诉Spring这个方法将会返回一个对象,这个对象要注 ...
- 移动端真机debug调试神器 vConsole学习(二)之实战
项目中实际使用 在项目中实际使用的时候发现还是有很多问题的 最初使用方式 <script src="vconsole.min.js"></script> ...
- 你不知道的css各类布局(五)之em布局、rem布局
em布局/rem布局 em和rem的区别 在了解弹性布局前我们需要先知道em和rem rem:font size of the root element,rem是相对于根元素<html>来 ...
- 你不知道的css各类布局(三)之自适应布局
自适应布局 概念 自适应布局(Adaptive Layout)是对凡是有自适应特性的一类布局的统称 自适应布局使用media query来检测当前浏览器的宽度进而通过CSS样式调整页面大小.自适应布局 ...
- 【科创人上海行】Tinyfool郝培强 :始于不惑的微服务式创业,背负身心病痛贴地飞行
Intro 科创人,分享技术创业者的成长与创业经验. 何谓创业?勇于面对未知.肩负重任的人生抉择. 何谓经验?沟沟坎坎.有笑有泪,各有其宝贵. 科创人的价值支点是"人",我们不以市 ...
- svn安装方法
1.下载site-1.6.5svn插件 2.
- shiro权限控制配置
shiro配置流程 web.xml中配置shiro的filter spring中配置shiro的过滤器工厂,指定对不同地址权限控制 , 传入安全管理器 配置安全管理器,传入realm,realm中定义 ...
- latex中文环境配置(针对北大模板,开题报告+中期答辩+毕业论文)
最近自己在忙着开题,中文环境真的是emm 以下只针对北大的毕业论文模板,至于其他的中文环境没有尝试 主要是用不同的latex编辑器会报不同的错误,当然我最后还是统一成了pdflatex,经过无数次尝试 ...
- MySQL的左连接查询,只取出最大的一条数据
今天有个需求,是通过两张表进行查询.一对多的关系.通过一个主键,取出其中的一条.开始以为还好,直接用用了left join on进行查询.却发现了问题所在.其他的好弄.开始的写法借鉴这篇博客:http ...
- ASP.NET实现验证码图片
新建一个checkcode.aspx文件,页面中不用写任何东西,在代码中,Page_Load中写入如下代码: string chkCode = string.Empty; int ix, ...