|
||||||||||
Memory ControlTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 8868 Accepted Submission(s): 2131 Problem Description Memory units are numbered from 1 up to N. A sequence of memory units is called a memory block. The memory control system we consider now has four kinds of operations: 1. Reset Reset all memory units free. 2. New x Allocate a memory block consisted of x continuous free memory units with the least start number 3. Free x Release the memory block which includes unit x 4. Get x Return the start number of the xth memory block(Note that we count the memory blocks allocated from left to right) Where 1<=x<=N.You are request to find out the output for M operations. Input Input contains multiple cases. Each test case starts with two integer N,M(1<=N,M<=50000) ,indicating that there are N units of memory and M operations. Follow by M lines,each line contains one operation as describe above. Output For each ¡°Reset¡± operation, output ¡°Reset Now¡±. For each ¡°New¡± operation, if it¡¯s possible to allocate a memory block, output ¡°New at A¡±,where Ais the least start number,otherwise output ¡°Reject New¡±. For each ¡°Free¡± operation, if it¡¯s possible to find a memory block occupy unit x, output ¡°Free from A to B¡±,where A and B refer to the start and end number of the memory block,otherwise output ¡°Reject Free¡±. For each ¡°Get¡± operation, if it¡¯s possible to find the xth memory blocks, output ¡°Get at A¡±,where A is its start number,otherwise output ¡°Reject Get¡±. Output one blank line after each test case. Sample Input
Sample Output
Source | ||||||||||
|