任务安排 jobs

题目:

任务安排(jobs.c/cpp/pas/in/out)
时限:每个测试点2 秒


问题描述
    小Y 最近遇到了一个棘手的问题。她有两项任务需要完成,其中第一项任务是重复操作1(op1)S1 次,第二项任务是重复操作2(op2)S2 次。为了完成这些任务,小 Y 雇佣了N 名工人。其中,第i 个工人完成op1 所需时间为T1,i,完成op2 所需时间为T2,i。每个op1 和op2 都只能被一名工人完成,每名工人在任意时刻都只能做一项工作。所有的工人从第0 秒开始工作。每当一个工人开始执行一项操作(op1 或op2),他必须一直执行下去直到完成而不能被打断。我们记第一项任务完成的时间为E1,第二项任务完成的时间为E2,你的任务就是安排这些工人的工作,使得E1+E2 最小。

 

输入数据

    输入文件的第一行包含一个整数T,表示输入文件中数据的组数。每个测试数据的第一行包含三个整数N S1 S2,含义如上文所述。接下来的N 行每行包含两个整数T1,I、T2,i,分别表示第i 个工人完成op1 和op2 所需的时间。


输出数据

    输出文件包含T 行,每行只有一个整数,表示你找到的E1+E2 的最小值。

 

输入样例
4
1 2 3
10 20
3 5 7
10 20
15 16
17 18
4 3 6
10 12
8 9
16 11
13 20
4 4 6
7 12
5 3
6 5
1000000 1000000


输出样例
100
162
84
41

 

数据规模
100%的数据中,1 ≤

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值