Input: order = [0,1,2,3,4]
Output: [0,2,4,1,3]
Explanation: Philosopher 0 eats; 1 wants to eat but 0's fork is busy → defer. 2 can eat (uses forks 2,3 - free). Then 4. Now queue head is 1: forks 0,1 are free (0 finished long ago, the simulation step model releases on dequeue). The arrangement is deadlock-free.