蝈蝈的内存管理(easy)

TimeLimit:1000MS  MemoryLimit:64MB
64-bit integer IO format:%lld
未提交 | 登录后收藏
Problem Description

假设当前有一块连续的内存,分成 n 个单位,编号 1 ~ n 。当有一个大小为 m 的文件需要储存时,会占用一块连续的 m 个单位的空间,但是并不是随机储存,而是从编号1的位置开始往后依次查找,如果当前位置能放下这个大小为 m 的文件,则会储存。比如储存这个大小为 m 的文件,假设当前没有其他文件储存,则从编号 1 开始储存,储存区间为 [ 1,m ],如果还需要再储存一个大小为 m 的文件,则需要储存在 [ m + 1,m * 2 ] 上。同时,如果文件被删除,则文件原本占的储存空间会被释放。现在在一天中,蝈蝈有多次文件放置操作和删除操作,蝈蝈想知道他的每一次放置和删除操作是否都是有效的。

Input

第一行两个整数 n 和 m,分别表示空间的大小和操作的次数(1 ≤ n,m ≤ 1000)

接下来 m 行,每行表示一次操作,操作的顺序就是输入的顺序,是有先后关系的,每行输入只会是以下两种格式中的一个:

① 1 id k ,表示有一个编号为 id 的且大小为 k 的文件需要储存(1 ≤ id ≤ m,且所有 id 各不相同,1 ≤ k ≤ n) ,如果当前内存能够储存,则储存,反之则丢弃

② 2 id ,表示需要删除编号为 id 的文件(1 ≤ id ≤ m)

Output

输出 m 行,每次表示对每次操作的输出:

对于操作①,如果当前可以放置,则输出放置区间的左端点,反之不能放置,则输出“Memory Limit Exceeded”

对于操作②,如果当前文件存在,则输出“Successfully Deleted”,反之文件不存在,则输出“Error”

SampleInput
3 7
1 1 1
1 2 1
2 1
1 3 2
2 3
2 2
1 4 2
SampleOutput
1
2
Successfully Deleted
Memory Limit Exceeded
Error
Successfully Deleted
1
Submit
题目统计信息详细
总AC数27
通过人数11
尝试人数14
总提交量71
AC率15.49%
AC该题后可以添加标签
贴完标签可以获得20ACB。
并且可以获得本题所有提交代码查看权限。
点击标题可以显示标签。
如果你还没认真思考过这题,请不要查看标签
如果您已经通过了该题,请务为该题贴上标签

T^T Online Judge

[BUG反馈] [FAQ] [闽ICP备17026590号-1]
当前版本:3.24 系统时间: