1.若空间分配成功,输出 allocate task x at [l,r] 代表为任务x分配了空间[l,r]
2.若空间分配失败,输出 allocation failed
3.若回收空间成功,输出 free [l,r] 代表回收了任务x的空间[l,r]
4.若未找到需回收的任务,输出 not found
Sample Input
8 10
1 5
2 7
3 3
1 -1
3 3
2 -1
4 1
4 2
Sample Output
allocate task 1 at [0,4]
allocation failed
allocate task 3 at [5,7]
free [0,4]
allocate task 3 at [0,2]
not found
allocate task 4 at [3,3]
allocate task 4 at [8,9]