题目解析
用例图示如下:
黄色表示从第2行开始输入的内存占用情况
绿色表示对应第1行的申请到的内存
本题我的解题思路如下:
首先收集所有的已分配的内存(第2行~最后一行),然后将这些已分配内存按照起始位置升序排序。我们假设升序后的已分配内存为 used_memory。
然后,定义一个 free_offset,用于记录当前已分配内存的上一个空闲内存块的起始位置,比如
free_offset初始化为0。
之后,开始遍历 used_memory,每遍历一个已分配内存块,我们会得到如下信息:
- used.offset,当前已分配内存块的起始位置
- used.size,当前已分配内存块的大小
下面需要对于use