1
var largestTimeFromDigits = function(arr) {3
for(let A=0; A<4; A++){4
for(let B=0; B<4; B++){6
for(let C=0; C<4; C++){7
if(C==A||C==B||arr[C]>=6){continue};8
for(let D=0; D<4; D++){9
if(D==A||D==B||D==C){continue};10
let time=arr[A]*1000+arr[B]*100+arr[C]*10+arr[D];11
if(time<2400){max=Math.max(max, time));16
// Case1: max<0, which means NOTHING VALID -> return ""17
// Case2: max isn't 4 digits. i.e.[0,0,0,0] -> padStart to make "0000"18
let output=max.toString().padStart(4,0);19
return max<0? "": output.substr(0,2)+":"+output.substr(2);