#include #include #include using namespace std; int main(void){ int tracks; int cars; int car; int* car_buffer = new int[200000]; int car_buffer_p = 0; while (true) { cin >> cars; cin >> tracks; car_buffer_p = 0; if (cars==0 && tracks==0) return 0; queue *q = new queue[tracks]; int cur_track = 0; bool added = false; for (int cur_car=0; cur_car> car; added = false; for(int j = 0;j= q[j].back()){ // cout << j+1 << " " ; car_buffer[car_buffer_p] = j+1; car_buffer_p++; q[j].push(car); added=true; break; } else continue; } if (!added){ if (cur_track=0;cur_track--){ /* if (!q[cur_track].empty() ){ cout << cur_track+1; q[cur_track].pop(); while (!q[cur_track].empty()){ cout << " " << cur_track+1 ; q[cur_track].pop(); } } cout << " "; */ while (!q[cur_track].empty()){ cout << cur_track+1; q[cur_track].pop(); if (!q[cur_track].empty() || (cur_track != 0)) cout << " "; } } cout << endl; } return 0; }