3
Source:
零件加工问题2
Time limit: 5000MS Memory limit: 32768K
Total Submit: 18 Accepted: 1
有个国有中型企业,接到一批需要加工零件的订单,员工们非常高兴,工厂领导为了鼓励员工尽快地完成加工任务,出台了奖励政策:“如果在保证质量要求的前提下,每完成一个零件加工任务,都有相同数量的奖金!”。所以所有员工都希望加工尽量多的零件,以便拿到更多的奖金。现在请你帮忙,怎样加工才能在一台机床上加工最多的零件。
假定对于待加工的第i个零件,给你两个非负整数Si,Ei,其中Si表示加工开始的时间,其中Ei表示加工结束的时间,由于受到客观条件的制约,这开始和结束的时间限制必须要遵守。当然在某个时刻一台机器只能加工一个零件。
本问题有多组测试数据,对于每组测试数据,输入的第一行是三个非负的整数N(0<=N<=150),TB,TE(0<=TB<=TE<=10000),其中N表示需要加工的零件个数,TB和TE分别表示给定的时间范围,即要求在TB和TE的时间内加工尽量多的零件。接着是N行[Si,Ei],其中Si,Ei如上所述(0<=Si<=Ei<=10000),而且规定零件编号顺序就是输入的顺序。输出只有一行是能够加工的最多的零件数。
Sample Input: 7 0 10 [4,7] [2,5] [1,3] [7,8] [3,7] [1,4] [6,9]
Sample Output:
3
2011-软件091-092-实验八
和MM去上课
Time limit: 1000MS Memory limit: 32768K
Total Submit: 1 Accepted: 0
北大的很多研究生住在万柳校区,他们每天要坐公交或骑车去4.5公里远的燕园上课。由于北京的交通很烂(我想也是很烂),许多同学选择骑车去上课。 查理同学和其他同学的骑车习惯不同,其他同学都是以固定的速度骑行,查理则是跟某个MM一起,这样就不会觉得无聊。当查理出发的时候,他会寻找一个MM作伴去燕园。如果找到了PLMM,他就会和她一起,否则就继续物色。在去燕园的路上,如果有某个MM速度比较快,超过他了,他就会丢下身边的MM去追那个更快的MM,然后和她一起去燕园。 我们假设查理出发的时刻为0,现给出很多MM的出发时间和速度,你来计算一下查理什么时候能到燕园呢?
Input
包含多组数据。每组数据第一行以个整数N(1<=N<=10000),代表MM数,N=0时退出,接下来有N行,每行代表一个MM的骑行信息。格式:Vi Ti。0 < Vi <= 40,代表骑车速度(km/h),Ti是该MM的出发时间(s),Ti可能小于0。
Output
每行输出代表一组数据。输出查理到达燕园的时间,不满1秒的按1秒算。
Sample Input
4 20 0 25 -155 27 190 30 240 2 21 0 22 34 0
Sample Output
780 771
看亚运
Time limit: 1000MS Memory limit: 32768K
Total Submit: 53 Accepted: 38
亚运会已经开始好几天了,估计很多热爱运动的ACMer也会抛开电脑,奔向电视了。
亚运会不是每年都有的,所以一定想看尽量多的完整的比赛,当然,作为新时代的好青年,你一定还会看一些其它的节目,比如新闻联播(永远不要忘记关心国家大事)、非常6+7、我爱记歌词,以及非诚勿扰等等,假设你已经知道了所有你喜欢看的电视节目的转播时间表,你会合理安排吗?(目标是能看尽量多的完整节目)。 Input
输入数据包含多个测试实例,每个测试实例的第一行只有一个整数
n(n<=100),表示你喜欢看的节目的总数,然后是n行数据,每行包括两个数据Ti_s,Ti_e (1<=i<=n),分别表示第i个节目的开始和结束时间,为了简化问题,每个时间都用一个正整数表示。n=0表示输入结束,不做处理。
Output
对于每个测试实例,输出能完整看到的电视节目的个数,每个测试实例的输出占一行。
Sample Input 12 1 3 3 4 0 7 3 8 15 19 15 20 10 15 8 18 6 12 5 10 4 14 2 9
0
Sample Output
5
零件加工问题2
Time limit: 1000MS Memory limit: 32768K
Total Submit: 129 Accepted: 65
有个国有中型企业,接到一批需要加工零件的订单,员工们非常高兴,工厂领导为了鼓励员工尽快地完成加工任务,出台了奖励政策:“如果在保证质量要求的前提下,每完成一个零件加工任务,都有相同数量的奖金!”。所以所有员工都希望加工尽量多的零件,以便拿到更多的奖金。现在请你帮忙,怎样加工才能在一台机床上加工最多的零件。
假定对于待加工的第i个零件,给你两个非负整数Si,Ei,其中Si表示加工开始的时间,其中Ei表示加工结束的时间,由于受到客观条件的制约,这开始和结束的时间限制必须要遵守。当然在某个时刻一台机器只能加工一个零件。
本问题有多组测试数据,对于每组测试数据,输入的第一行是三个非负的整数N(0<=N<=150),TB,TE(0<=TB<=TE<=10000),其中N表示需要加工的零件个数,TB和TE分别表示给定的时间范围,即要求在TB和TE的时间内加工尽量多的零件。接着是N行[Si,Ei],其中Si,Ei如上所述(0<=Si<=Ei<=10000),而且规定零件编号顺序就是输入的顺序。输出只有一行是能够加工的最多的零件数。
Sample Input: 7 0 10 [4,7] [2,5] [1,3] [7,8] [3,7] [1,4] [6,9]
Sample Output: 3
2011-软件091-092-实验九
打包
Time limit: 1000MS Memory limit: 32768K
Total Submit: 1 Accepted: 0
一个工厂把产品包装在正方形的盒子里,尺寸有1×1,2×2,3×3,4×4,5×5,6×6六种,高度为h。产品最终总是捆扎成高度为h的6×6的包裹送到客户手里,因为客户希望包裹越少越好。请你编写一个程序计算最少需要多少包裹才能把客户买的产品送完。
Input
输入包含多组数据。每组数据有一行,包含6个整数,用空格隔开,分别代表1×1的产品、2×2的产品……6×6的产品的个数。输入6个0时退出。
Output
每组数据输出一行,输出最少需要的包裹数。
Sample Input 0 0 4 0 0 1 7 5 1 0 0 0 0 0 0 0 0 0
Sample Output 2 1
基站安装
Time limit: 1000MS Memory limit: 32768K
Total Submit: 101 Accepted: 60
从前有一个一望无际的海滩,海滩后面是陆地,前面是广阔的大海。海中有很多小岛(可以用一个点表示)。现在海滩上需要安装一些基站(海滩上的任意位