Advertisement
butbanksy

Untitled

Nov 28th, 2020 (edited)
722
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.29 KB | None | 0 0
  1.     public static List<Integer> scatterPalindrome(List<String> strToEvaluate) {
  2.         // Write your code here
  3.         List<Integer> integerNumber = new ArrayList<>();
  4.         for (String str : strToEvaluate) {
  5.             int count = 0;
  6.             for (int i = 0; i < str.length(); i++) {
  7.                 for (int j = i; j < str.length(); j++) {
  8.                     if (str.substring(i, j+1).length() != 1) {
  9.                         count = checkIfPalindrome(str.substring(i, j+1)) ? count + 1 : count;
  10.                     }
  11.                     else {
  12.                         count++;
  13.                     }
  14.                 }
  15.             }
  16.             integerNumber.add(count);
  17.         }
  18.         return integerNumber;
  19.     }
  20.  
  21.  
  22.     public static boolean checkIfPalindrome(String strToCheck) {
  23.         Map<Character, Integer> lettersMap = new HashMap<>();
  24.         for (char c : strToCheck.toCharArray()) {
  25.             if (lettersMap.containsKey(c)) {
  26.                 lettersMap.replace(c, lettersMap.get(c) + 1);
  27.             } else {
  28.                 lettersMap.put(c, 1);
  29.             }
  30.         }
  31.         int oddNumbers = 0;
  32.         for (Integer x : lettersMap.values()) {
  33.             oddNumbers = x % 2 != 0 ? oddNumbers + 1 : oddNumbers;
  34.         }
  35.         return oddNumbers <= 1;
  36.     }
  37.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement