Facebook
From Rude Pelican, 3 Years ago, written in Plain Text.
Embed
Download Paste or View Raw
Hits: 137
  1. import java.util.ArrayList;
  2. import java.util.Collections;
  3. import java.util.List;
  4.  
  5. public class Day1 {
  6.     List<Integer> result = new ArrayList<Integer>();
  7.  
  8.     public String largestTimeFromDigits(int[] A) {
  9.         List<Integer> arr = new ArrayList<Integer>();
  10.         for (int a: A){
  11.             arr.add(a);
  12.         }
  13.         permute(arr,0);
  14.         List<Integer> goodOnes = new ArrayList<Integer>();
  15.         for (Integer i: result){
  16.             if(i % 100 < 60 && i / 100 < 24){
  17.                 goodOnes.add(i);
  18.             }
  19.         }
  20.         int finalNumber;
  21.         if(goodOnes.size() == 0){
  22.             return "";
  23.         } else {
  24.             finalNumber = Collections.max(goodOnes);
  25.         }
  26.         return "" + String.format("%02d",finalNumber / 100) + ":" + String.format("%02d",finalNumber % 100);
  27.     }
  28.  
  29.     void permute(List<Integer> arr, int k){
  30.         for(int i = k; i < arr.size(); i++){
  31.             java.util.Collections.swap(arr, i, k);
  32.             permute(arr, k+1);
  33.             java.util.Collections.swap(arr, k, i);
  34.         }
  35.         if (k == arr.size() -1){
  36.             result.add(Integer.parseInt(""+arr.get(0) + arr.get(1) + arr.get(2) + arr.get(3)));
  37.         }
  38.     }
  39.  
  40. }