题目名称 | 376. [IOI 2002] 任务安排 |
---|---|
输入输出 | batch.in/out |
难度等级 | ★★☆ |
时间限制 | 1000 ms (1 s) |
内存限制 | 128 MiB |
测试数据 | 10 |
题目来源 | cqw 于2009-09-16加入 |
开放分组 | 全部用户 |
提交状态 | |
分类标签 | |
查看题解 | 分享题解 |
通过:121, 提交:237, 通过率:51.05% | ||||
Youngsc | 100 | 0.000 s | 0.00 MiB | C++ |
LGLJ | 100 | 0.000 s | 0.00 MiB | C++ |
瑆の時間~無盡輪迴·林蔭 | 100 | 0.000 s | 0.00 MiB | C++ |
SKG_G | 100 | 0.000 s | 0.00 MiB | C++ |
┭┮﹏┭┮ | 100 | 0.000 s | 0.00 MiB | C++ |
小金 | 100 | 0.000 s | 0.00 MiB | C++ |
LGLJ | 100 | 0.000 s | 0.32 MiB | C++ |
QwQ | 100 | 0.002 s | 0.62 MiB | C++ |
mikumikumi | 100 | 0.003 s | 0.37 MiB | C++ |
再见 | 100 | 0.003 s | 0.41 MiB | C++ |
本题关联比赛 | |||
20090916练习赛 | |||
20090916练习赛 | |||
20090916练习赛 | |||
20090916练习赛 |
关于 任务安排 的近10条评论(全部评论) | ||||
---|---|---|---|---|
[cogs 2723] 任务安排加强版
LGLJ
2019-09-27 13:22
6楼
| ||||
| ||||
| ||||
斜率优化居然写跪了两次233
| ||||
斜率优化,被各种位置关系搞乱了......
时间减反了一步居然还能过几个点,orz.... | ||||
①1D1D DP优化,O(n^2logn)(是否可能?),O(n^2)
②“倒着来”,O(n^2) update 20140127: O(N)的算法已经实现(斜率优化或者类似的东西),但并不是rank1(没错就是0.055s的那个)……因为常数大的一笔…… 这道题的英文名就是batch,还有别的译法,诸如“任务分批”,“批量任务管理” |
有 $N$ 个任务排成一个序列在一台机器上等待完成(顺序不得改变),这 $N$ 个任务被分成若干批,每批包含连续的若干个任务。从时刻 $0$ 开始,任务被分批加工,执行第 $i$ 个任务所需的时间是$T_i$。另外,在每批任务开始前,机器需要 $S$ 的启动时间,故执行一批任务所需的时间是启动时间 $S$ 和每个任务需要时间的总和(同一批任务将在同一时刻完成)。每个任务的费用是它的完成时刻乘以一个费用系数$C_i$。请为机器规划一个分组方案,使得总费用最小。
例如:$S=1$;$T$={$1,3,4,2,1$};$C$={$3,2,3,3,4$}。
如果分组方案是{$1$,$2$}、{$3$}、{$4$,$5$},则各个任务完成时间分别为{$5,5,10,14,14$},费用分别为{$15,10,30,42,56$},总费用就是$153$。
第一行是$N$;
第二行是$S$;
接下来 $N$ 行,每行有一对数,分别为 $T_i$ 和 $F_i$,表示第$i$个任务单独完成所需的时间是$T_i$及其费用系数$C_i$。
一个正整数,表示最小的总费用。
5 1 1 3 3 2 4 3 2 3 1 4
153
$60$%的数据,$1<=N<=500,0<=S<=50,1<=T_i,C_i<=100$;
$100$%的数据,$1<=N<=5000,0<=S<=50,1<=T_i,C_i<=100$;
$IOI$ $2002$
《算法竞赛进阶指南》$CH5A01$