BanishMemory

Poisonous Plants

May 20th, 2017
205
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.05 KB | None | 0 0
  1.  
  2. import java.util.ArrayDeque;
  3. import java.util.ArrayList;
  4. import java.util.List;
  5. import java.util.Queue;
  6. import java.util.Scanner;
  7.  
  8. public class PoisonousPlants {
  9.  
  10.     public static void main(String[] args) {
  11.         @SuppressWarnings("resource")
  12.         Scanner in = new Scanner(System.in);
  13.  
  14.         int n = Integer.valueOf(in.nextLine().trim());
  15.  
  16.         List<Integer> garden = new ArrayList<>(n);
  17.  
  18.         {
  19.             String[] flowers = in.nextLine().split("\\s+");
  20.  
  21.             if (!(flowers.length == 1 && flowers[0].length() == 0)) {
  22.                 for (String f : flowers) {
  23.                     garden.add(Integer.parseInt(f));
  24.                 }
  25.             }
  26.         }
  27.  
  28.         boolean deadFlowers;
  29.         long k = 0;
  30.  
  31.         do {
  32.             deadFlowers = false;
  33.             Queue<Integer> positionsQ = new ArrayDeque<>();
  34.  
  35.             for (int i = garden.size() - 1; i > 0; i--) {
  36.                 if (garden.get(i) > garden.get(i - 1)) {
  37.                     positionsQ.add(i);
  38.                 }
  39.             }
  40.  
  41.             while (positionsQ.size() > 0) {
  42.                 garden.remove(positionsQ.poll().intValue());
  43.                 deadFlowers = true;
  44.             }
  45.             if (deadFlowers)
  46.                 k++;
  47.  
  48.         } while (deadFlowers);
  49.  
  50.         System.out.println(k);
  51.     }
  52.  
  53. }
Advertisement
Add Comment
Please, Sign In to add comment