veronikaaa86

01. Sum Adjacent Equal Numbers

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