Didart

Sum Adjacent Equal Numbers

Oct 13th, 2021
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.16 KB | None | 0 0
  1. import java.text.DecimalFormat;
  2. import java.util.Arrays;
  3. import java.util.List;
  4. import java.util.Scanner;
  5. import java.util.stream.Collectors;
  6.  
  7. public class SumAdjacentEqualNumbers {
  8.     public static void main(String[] args) {
  9.         Scanner scanner = new Scanner(System.in);
  10.  
  11.         List<Double> numList = Arrays
  12.                 .stream(scanner.nextLine().split(" "))
  13.                 .map(Double::parseDouble)
  14.                 .collect(Collectors.toList());
  15.  
  16.         for (int i = 0; i < numList.size() - 1; i++) {
  17.             if (numList.get(i).equals(numList.get(i + 1))) {
  18.                 numList.set(i, numList.get(i) + numList.get(i + 1));
  19.                 numList.remove(i + 1);
  20.  
  21.                 i = -1;
  22.             }
  23.         }
  24.  
  25.         System.out.println(joinElementsByDelimiter(numList, " "));
  26.     }
  27.  
  28.     public static String joinElementsByDelimiter (List<Double> list, String delimiter) {
  29.         String output = "";
  30.         for (Double item : list) {
  31.             DecimalFormat df = new DecimalFormat("0.#");
  32.             String numDf = df.format(item) + delimiter;
  33.  
  34.             output += numDf;
  35.         }
  36.  
  37.         return output;
  38.     }
  39. }
  40.  
  41.  
Advertisement
Add Comment
Please, Sign In to add comment