Advertisement
Guest User

Untitled

a guest
Apr 11th, 2018
214
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.84 KB | None | 0 0
  1. package PractiacalExam;
  2.  
  3. import java.io.BufferedReader;
  4. import java.io.IOException;
  5. import java.io.InputStreamReader;
  6. import java.util.ArrayDeque;
  7. import java.util.Arrays;
  8. import java.util.Deque;
  9.  
  10. public class Pr02LittleAlchemy {
  11.  
  12.     public static void main(String[] args) {
  13.  
  14.         try (BufferedReader reader = new BufferedReader(new InputStreamReader(System.in))) {
  15.             ArrayDeque<Integer> stones = new ArrayDeque<>();
  16.             Deque<Integer> gold = new ArrayDeque<>();
  17.  
  18.             Arrays.stream(reader.readLine().trim().split("\\s+"))
  19.                     .mapToInt(Integer::parseInt)
  20.                     .forEachOrdered(stones::addLast);
  21.  
  22.             String input = reader.readLine();
  23.             while (!"Revision".equalsIgnoreCase(input)) {
  24.                 String[] tokens = input.split("\\s+");
  25.                 int value = Integer.parseInt(tokens[2]);
  26.  
  27.                 if ("Apply".equalsIgnoreCase(tokens[0])) {
  28.                     for (int i = 0; i < value; i++) {
  29.                         if (!stones.isEmpty()) {
  30.                             int stone = stones.pop();
  31.                             stone--;
  32.                             if (stone > 0) {
  33.                                 stones.addLast(stone);
  34.                             } else {
  35.                                 gold.addLast(stone);
  36.                             }
  37.                         }
  38.                     }
  39.                 } else if ("Air".equalsIgnoreCase(tokens[0]) && !gold.isEmpty()) {
  40.                     stones.addLast(value);
  41.                     gold.pop();
  42.                 }
  43.  
  44.                 input = reader.readLine();
  45.             }
  46.  
  47.             System.out.println(stones.toString().replaceAll("[\\[,\\]]", ""));
  48.             System.out.println(gold.size());
  49.         } catch (IOException e) {
  50.             e.printStackTrace();
  51.         }
  52.     }
  53. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement