题目名称 1598. [SDOI 2009]学校食堂
输入输出 dining.in/out
难度等级 ★★★
时间限制 1000 ms (1 s)
内存限制 256 MiB
测试数据 25
题目来源 GravatarOI永别 于2014-04-16加入
开放分组 全部用户
提交状态
分类标签
状态压缩 动态规划 贪心
分享题解
通过:90, 提交:195, 通过率:46.15%
Gravatariotang 100 0.403 s 18.28 MiB C++
Gravatar卜卜 100 0.436 s 0.36 MiB C++
GravatarAnson 100 0.573 s 12.10 MiB C++
GravatarAnson 100 0.595 s 12.10 MiB C++
GravatarHZOI_蒟蒻一只 100 0.638 s 16.02 MiB C++
Gravatartest 100 0.648 s 16.96 MiB C++
GravatarYPZ_979 100 0.665 s 16.96 MiB C++
GravatarHzoi_QTY 100 0.714 s 17.07 MiB C++
Gravatar_Itachi 100 0.719 s 8.15 MiB C++
GravatarYoungsc 100 0.721 s 13.03 MiB C++
关于 学校食堂 的近10条评论(全部评论)
不想再说什么了。。。。
GravatarHzoi_QTY
2017-05-24 17:49 7楼
刷新下限……
GravatarCooook
2017-05-22 12:07 6楼
突破天际……
GravatarHZOI_蒟蒻一只
2017-05-22 11:23 5楼
刷新状压观了。。
GravatarHzoi_Ivan
2017-05-11 11:01 4楼
哈哈哈!!不会玩位运算毁一下午!
Gravatar_Itachi
2016-12-25 18:56 3楼
呜呜~数组开小了一个格,WA了5个点

Gravatar落尘
2015-08-13 21:12 2楼
【数据规模和约定】
对于30%的数据,满足1 ≤ N ≤ 20。
对于100%的数据,满足1 ≤ N ≤ 1,000,0 ≤ Ti ≤ 1,000,0 ≤ Bi ≤ 7,1 ≤ C ≤ 5。
存在30%的数据,满足0 ≤ Bi ≤ 1。
存在65%的数据,满足0 ≤ Bi ≤ 5。
存在45%的数据,满足0 ≤ Ti ≤ 130。
这是数据范围,没有数据范围这题根本做不了。
Gravatar神利·代目
2015-08-05 19:26 1楼

1598. [SDOI 2009]学校食堂

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

【题目描述】

F的学校在城市的一个偏僻角落,所有学生都只好在学校吃饭。学校有一个食堂,虽然简陋,但食堂大厨总能做出让同学们满意的菜肴。当然,不同的人口味也不一定相同,但每个人的口味都可以用一个非负整数表示。

由于人手不够,食堂每次只能为一个人做菜。做每道菜所需的时间是和前一道菜有关的,若前一道菜的对应的口味是a,这一道为b,则做这道菜所需的时间为(a or b-a and b),而做第一道菜是不需要计算时间的。其中,orand表示整数逐位或运算及逐位与运算,C语言中对应的运算符为

学生数目相对于这个学校还是比较多的,吃饭做菜往往就会花去不少时间。因此,学校食堂偶尔会不按照大家的排队顺序做菜,以缩短总的进餐时间。

虽然同学们能够理解学校食堂的这种做法,不过每个同学还是有一定容忍度的。也就是说,队伍中的第i个同学,最多允许紧跟他身后的Bi个人先拿到饭菜。一旦在此之后的任意同学比当前同学先拿到饭,当前同学将会十分愤怒。因此,食堂做菜还得照顾到同学们的情绪。

现在,小F想知道在满足所有人的容忍度这一前提下,自己的学校食堂做完所有菜最少需要多少时间。

【输入格式】

dining.in的第一行包含一个正整数C,表示测试点的数据组数。

每组数据的第一行包含一个正整数N,表示同学数。

每组数据的第二行起共N行,每行包含两个用空格分隔的非负整数TiBi,表示按队伍顺序从前往后的每个同学所需的菜的口味和这个同学的忍受度。

每组数据之间没有多余空行。

【输出格式】

输出文件dining.out包含C行,每行一个整数,表示对应数据中食堂完成所有菜所需的最少时间。

【样例输入】

2

5

5 2

4 1

12 0

3 3

2 2

2

5 0

4 0

【样例输出】

16
 1

【提示】

DP 【数据规模和约定】 对于30%的数据,满足1 ≤ N ≤ 20。 

对于100%的数据,满足1 ≤ N ≤ 1,000,0 ≤ Ti ≤ 1,000,0 ≤ Bi ≤ 7,1 ≤ C ≤ 5。 

存在30%的数据,满足0 ≤ Bi ≤ 1。 存在65%的数据,满足0 ≤ Bi ≤ 5。 存在45%的数据,满足0 ≤ Ti ≤ 130。

【来源】

BZOJ————SDOI