[코테 챌린지] 2160. Minimum Sum of Four Digit Number After Splitting Digits

Kimmy·2022년 8월 26일
0

CODING TEST

목록 보기
7/9

네개의 digits으로 이루어진 문자열 (숫자열)이 주어질때 모든 경우의 수 짝중에 요소를 더했을때 가장 작은 값이 나오는 코드를 작성해라.

이건 알고리즘 설명이...

2932 라는 숫자열이 들어왔을때, 우선 숫자열은 인덱스가 없기 때문에 이리저리 만지기가 불편하다. 배열로 수정을 우선 해주는 작업이 필요

num = num.toString.split('');

그러고 나선 sorting을 해준다. sorting을 해주다 보면 2239 라는 배열이 나오게 되는데, 여기서 홀수 요소 더하기 짝수 요소를 하면 가장 minimum 값이 나온다는 것은 규칙으로 알 수 있다. 이 규칙이 알고리즘 상으로 설명이 되는진 잘 모르겠다.

var minimumSum = function(num) {
  num = num.toString().split('').sort((a,b)=>{return a-b});
  let answer = (parseInt(num[0] * 10) + parseInt(num[2])) + (parseInt(num[1] * 10) + parseInt(num[3])); 
  
  
  return answer;
};

그렇게 나온 코드는 이건데, 이제 슬슬 문제가 풀리니 면접관이 봤을때 이 코드를 좋은 코드라고 볼까? 라는 의문이 생김.. 이런거 알려주는 사람은 없나..

profile
Frond-End Developer

0개의 댓글