import java.util.*; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int i, n = sc.nextInt(), t; String ac = null; boolean[] errors = new boolean[10001]; Deque<Integer> dq = new ArrayDeque(); for (i = 1; i <= n; i++) { ac = sc.next(); errors[i] = false; if ("LIN".equals(ac)) { t = sc.nextInt(); dq.addFirst(t); } else if ("RIN".equals(ac)) { t = sc.nextInt(); dq.addLast(t); } else if ("LOUT".equals(ac)) { if (dq.size() > 0) dq.removeFirst(); else { errors[i] = true; } } else if ("ROUT".equals(ac)) { if (dq.size() > 0) dq.removeLast(); else { errors[i] = true; } } } while (dq.size() > 0) { System.out.print(dq.getFirst() + " "); dq.pop(); } System.out.println(); for (i = 1; i <= n; i++) { if (errors[i] == true) { System.out.println(i+" ERROR"); } } sc.close(); } } /************************************************************** Problem: 1789 User: admin Language: Java Result: Accepted Time:987 ms Memory:42416 kb ****************************************************************/