|
|
back to boarda silly problem I define : type PNODE=^NODE NODE=record value:longword; pre:PNODE; end Var A:array[1..1000] of PNODE; then memory used is 1064KB but when add : type PNODE=^NODE NODE=record value:longword; pre:PNODE; end Var A:array[1..1000] of PNODE; last:array[1..1000] of PNODE; then memory used is 932KB ---> what happend ?? Re: a silly problem Depend on the way you use the array. The memory is not only the memory you declare in your program but also the memory to run your program. Memory = memory you declare + memory to run your program . Re: a silly problem In Vietnamese : Làm sao tính được vậy anh, em đã loại hết tất cả những gì có thể bỏ được rồi. Vẫn bị MLE Re: a silly problem it is not a necessary to allocate memory for all memory that you declare(but for memory that you use it is necessary) memory can allocates by blocks, and only if you use it algorithm that rule this process can depends on total memory that you declare and it is possible that in this situation compiler uses such algorithm Re: a silly problem In Vietnamese : Vì 1 con trỏ của em tốn tới 8 byte ( 4 byte cho longword và 4 byte cho việc "trỏ" ) -> N <= 100000 thì em đã mất tới 800000 byte > 0.75 MB rồi . MLE là điều tất yếu . Anh dùng mảng , kô dùng con trỏ cũng mất tới 700 KB :) . Edited by author 19.06.2007 17:34 |
|
|