/ benchmark / hlt / Input.java
Input.java
 1  package hlt;
 2  
 3  public class Input {
 4      private final String[] input;
 5      private int current;
 6  
 7      public Input(final String line) {
 8          input = line.split(" ");
 9      }
10  
11      public int getInt() {
12          return Integer.parseInt(input[current++]);
13      }
14  
15      public static Input readInput() {
16          return new Input(readLine());
17      }
18  
19      public static String readLine() {
20          try {
21              final StringBuilder builder = new StringBuilder();
22  
23              int buffer;
24              for (; (buffer = System.in.read()) >= 0;) {
25                  if (buffer == '\n') {
26                      break;
27                  }
28                  if (buffer == '\r') {
29                      // Ignore carriage return if on windows for manual testing.
30                      continue;
31                  }
32                  builder.append((char)buffer);
33              }
34  
35              return builder.toString();
36          } catch (final Exception e) {
37              Log.log("Input connection from server closed. Exiting...");
38              System.exit(0);
39              throw new IllegalStateException(e);
40          }
41      }
42  }