#include #include #define MAX 0x3f3f3f3f int main(void) { int i, j, flag = 0, m; scanf("%d", &m); int **mat = malloc(m * sizeof(int*)); for (i = 0; i < m; i++) { mat[i] = malloc(2 * sizeof(int)); } for (i = 0; i < m; i++) { scanf("%d", &mat[i][0]); if (mat[i][0] == 2) { mat[i][1] = -1; } else { scanf("%d", &mat[i][1]); } } int *v = malloc(m * sizeof(int)); for (i = 0; i < m; i++) { v[i] = MAX; } for (i = 0; i < m; i++) { if (mat[i][0] == 1) { j = 0; while (v[j] != MAX) { j++; } v[j] = mat[i][1]; } else if (mat[i][0] == 2) { j = 0; while (v[j] != MAX) { j++; } v[j - 1] = MAX; } else { for (j = 0; j < m; j++) { if (v[j] <= mat[i][1]) { flag = 1; printf("%d ", v[j]); } } if (flag == 0) { printf("Empty\n"); } else { printf("\n"); } } } return 0; }