题目名称 887. 工序安排
输入输出 jobus.in/out
难度等级 ★★
时间限制 1000 ms (1 s)
内存限制 128 MiB
测试数据 12
题目来源 Gravatarsywgz 于2012-07-11加入
开放分组 全部用户
提交状态
分类标签
IOI USACO 二分法 贪心
分享题解
通过:13, 提交:29, 通过率:44.83%
Gravatarxinging 100 0.002 s 0.32 MiB C++
Gravatar阿狸 100 0.003 s 0.32 MiB C++
GravatarQhelDIV 100 0.004 s 0.39 MiB C++
Gravatarxinging 100 0.004 s 3.28 MiB C++
Gravatarxinging 100 0.005 s 0.32 MiB C++
Gravatarxinging 100 0.005 s 7.95 MiB C++
Gravatarswttc 100 0.006 s 0.32 MiB C++
Gravatarmildark 100 0.007 s 0.46 MiB C++
Gravatarmikumikumi 100 0.008 s 0.30 MiB C++
Gravatarxinging 100 0.008 s 0.32 MiB C++
关于 工序安排 的近10条评论(全部评论)
我无聊的A了四次
Gravatarxinging
2014-12-04 20:25 2楼
出了一些智硬的状况……= =
Gravatarcstdio
2013-10-31 20:46 1楼

887. 工序安排

★★   输入文件:jobus.in   输出文件:jobus.out   简单对比
时间限制:1 s   内存限制:128 MiB

USACO/job(by Felicia Crazy)

描述


一家工厂的流水线正在生产一种产品,这需要两种操作:操作A和操作B。每个操作只有一些机器能够完成。


上图显示了按照下述方式工作的流水线的组织形式。A型机器从输入库接受工件,对其施加操作A,得到的中间产品存放在缓冲库。B型机器从缓冲库接受中间产品,对其施加操作B,得到的最终产品存放在输出库。所有的机器平行并且独立地工作,每个库的容量没有限制。每台机器的工作效率可能不同,一台机器完成一次操作需要一定的时间。

给出每台机器完成一次操作的时间,计算完成A操作的时间总和的最小值,和完成B操作的时间总和的最小值。

PROGRAM NAME: jobus

INPUT FORMAT(file jobus.in)

第一行
三个用空格分开的整数:
  • N,工件数量 (1<=N<=1000)
  • M1A型机器的数量 (1<=M1<=30)
  • M2B型机器的数量 (1<=M2<=30)
第二行

M1个整数(表示A型机器完成一次操作的时间,1..20),接着是M2个整数(B型机器完成一次操作的时间,1..20

OUTPUT FORMAT(file jobus.out)

只有一行。输出两个整数:完成所有A操作的时间总和的最小值,和完成所有B操作的时间总和的最小值(A操作必须在B操作之前完成)。

SAMPLE INPUT (file jobus.in)

5 2 3
1 1 3 1 4 

SAMPLE OUTPUT (file jobus.out)

3 5