티스토리 뷰

Algorithms

Time Conversion

seoca 2020. 8. 22. 20:30

Solution in JavaScript

const s = '07:05:45PM';

function TimeConversion(s) {

    // string을 바꿀 수 없으니 split을 사용해서 array로 바꿔준다. 
    // AM과 PM도 삭제. '00:00:00AM' -> ['00', '00', '00']
    //const arr = s.slice(0, 8).split(':');
    const arr = s.split(':');


    //indexOf(): 원하는 element의 index number return하고 원하는 index가 없으면 -1 return
    //PM 이 존재하면 최소 0 이니까 조건을 '> -1' 로 준다.
    //min 과 sec은 같고 시간 즉 arr[0]만 변화주면됨.
    arr[0] = (s.indexOf('PM') > -1) ?

        //PM case. type conversion to number
        (arr[0] === 12 ? '12' : Number(arr[0]) + 12) :

        //AM case
        (arr[0] === 12 ? '00' : arr[0]);

    return arr.join(':'); //join으로 다시 string으로 변환.
}

console.log(TimeConversion(s)); //19:05:45

 

 

 

 

Reference

https://www.hackerrank.com/challenges/time-conversion/problem

 

Time Conversion | HackerRank

Convert time from an AM/PM format to a 24 hour format.

www.hackerrank.com

 

'Algorithms' 카테고리의 다른 글

Apple and Orange  (0) 2020.08.24
Grading Students  (0) 2020.08.22
Birthday Cake Candles  (0) 2020.08.16
Mini-Max Sum  (0) 2020.08.04
Staircase  (0) 2020.08.04