题目名称 1365. [HAOI 2013]软件安装
输入输出 haoi13t4.in/out
难度等级 ★★☆
时间限制 1000 ms (1 s)
内存限制 128 MiB
测试数据 10
题目来源 GravatarQhelDIV 于2013-04-23加入
开放分组 全部用户
提交状态
分类标签
线段树
分享题解
通过:120, 提交:262, 通过率:45.8%
GravatarSamle 100 0.072 s 2.10 MiB C++
GravatarShirry 100 0.089 s 4.15 MiB C++
Gravatarszzy 100 0.102 s 2.05 MiB C++
GravatarTA 100 0.115 s 14.43 MiB C++
Gravatar宋逸群 100 0.119 s 6.45 MiB C++
Gravatar宋逸群 100 0.122 s 6.45 MiB C++
Gravatar宋逸群 100 0.130 s 6.45 MiB C++
Gravatar小DOTA 100 0.132 s 4.89 MiB C++
GravatarAAAAAAAAAA 100 0.140 s 3.37 MiB C++
Gravatar赵赵赵 100 0.141 s 3.27 MiB Pascal
关于 软件安装 的近10条评论(全部评论)
原题还wa了两次
GravatarAAAAAAAAAA
2017-08-31 21:01 12楼
啊啊啊啊啊啊啊终于调好了。。。自己傻逼一样的错误。。。果然一定要记得不要怕麻烦,多用调试加手写模拟。。。
错误1:下放lazytag时应该更新自己的值,但是更新成左子节点的值了
错误2:nd[k << 1 | 1]写成nd[k << 1 | m]喵喵喵????
GravatarkZime
2017-03-22 09:12 11楼
再写一遍,发现真是水啊
GravatarGo灬Fire
2016-12-30 17:50 10楼
膜拜楼上大神,我考试时写了1小时的分块结果发现审错题了,误以为退房的区间保证在此之前都已经住人,正要改结果交卷了。。。
悲催的下午想改却一直颓,只好弃疗,写了个线段树的过了。。
Gravatar_Itachi
2016-10-31 18:42 9楼
分块终于过了哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈
调到现在
GravatarGROWL GOOD BOYส็
2016-10-31 16:54 8楼
暴力70,数据水的可以= =
GravatarAntiLeaf
2016-10-31 16:23 7楼
GravatarHzoi_Go灬Fire
2016-10-31 16:13 6楼
GravatarNewBee
2016-10-31 16:01 5楼
Gravatar哒哒哒哒哒!
2016-10-31 15:17 4楼
%%%
Gravatarsxysxy
2016-06-26 12:08 3楼

1365. [HAOI 2013]软件安装

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

   Dr.Kong有一个容量为N MB (1 <= N <= 50,000)的存储磁盘,不妨设地址空间编号为1到N。现在他需要安装一些软件, 每个软件要占用一定大小的容量且必须装在连续的地址空间里。比如发出指令“1 100”,表示需要申请100 MB的存储空间。如果有多个满足条件的连续空间,则选择起始地址最小的一个进行分配。若没有足够的连续空间,将不安装此软件(即使有足够多的不连续存储空间)。

   系统可以不定时的卸载软件,释放磁盘的空间。比如:发出“2 23 100”,表示释放起始地址为23的连续100MB大小的容量。释放时,不需要考虑这些空间里是否安装过软件。

   请你编写一个程序,帮助Dr.Kong处理M (1 <= M <= 50,000)个按指令次序请求的任务。第一个请求到来前,磁盘是空的。

输入格式:

第1行: N  M

第2..M+1行: 每行描述了一个请求,如果是申请,则用2个数字 1 Mi 表示;

                     如果是释放,则用3个数字 2 Di Mi表示。数据之间用一个空格隔开

                   (1<=Di ,Mi<= 50,000)

输出格式:

对于每个申请指令,输出1行。如果请求能被满足,输出满足条件的最小起始地址;如果请求无法被满足,输出0。

输入样例 :            

10 6

1 3

1 3

1 3

1 3

2 5 5

1 6

输出样例 :

1

4

7

0

5