Advertisement
Guest User

Untitled

a guest
Jun 20th, 2019
333
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.97 KB | None | 0 0
  1. package exam;
  2.  
  3. import java.util.ArrayDeque;
  4. import java.util.Arrays;
  5. import java.util.Scanner;
  6.  
  7. public class MakeASalad {
  8.     public static void main(String[] args) {
  9.         Scanner scanner=new Scanner(System.in);
  10.         ArrayDeque<String> vegetables=new ArrayDeque<>();
  11.         Arrays.stream(scanner.nextLine().split(" ")).filter(x -> x.matches("(tomato|carrot|lettuce|potato)")).forEach(vegetables::offer);
  12.         ArrayDeque<Integer> salads=new ArrayDeque<>();
  13.         ArrayDeque<Integer> origin=new ArrayDeque<>();
  14.         ArrayDeque<Integer> result=new ArrayDeque<>();
  15.         Arrays.stream(scanner.nextLine().split(" ")).mapToInt(Integer::parseInt).forEach(x -> {
  16.             salads.push(x);
  17.             origin.push(x);
  18.         });
  19.      
  20.         while(origin.size() > 0 && vegetables.size() > 0){
  21.             int veggieVal=vegetableToInt(vegetables.peek());
  22.            
  23.  
  24.             int saladsCalories=salads.peek();
  25.  
  26.             int rest=saladsCalories-veggieVal;
  27.             if(rest > 0){
  28.                 salads.pop();
  29.                 vegetables.poll();
  30.                 salads.push(rest);
  31.  
  32.             }else{
  33.                
  34.                 salads.pop();
  35.                 vegetables.poll();
  36.                 result.offer(origin.pop());
  37.             }
  38.         }
  39.         System.out.println(result.toString().replaceAll("[\\[\\],]",""));
  40.  
  41.         if(origin.size() != 0){
  42.             System.out.println(origin.toString().replaceAll("[\\[\\],]",""));
  43.         }
  44.  
  45.         if(vegetables.size() != 0){
  46.             System.out.println(vegetables.toString().replaceAll("[\\[\\],]",""));
  47.         }
  48.  
  49.     }
  50.     public static int vegetableToInt(String veggie){
  51.         switch (veggie.toLowerCase()){
  52.             case "tomato":
  53.                 return 80;
  54.  
  55.             case "carrot":
  56.                 return 136;
  57.             case "lettuce":
  58.                 return 109;
  59.             case "potato":
  60.                 return 215;
  61.         }
  62.         return 0;
  63.     }
  64. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement