본문 바로가기
코테연습

115. 최댓값과 최솟값 Javascript

by hxunz 2022. 9. 12.

https://school.programmers.co.kr/learn/courses/30/lessons/12939

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

1. 문제에 대한 이해

  • 우리가 풀어야 할 문제는 무엇인가?
     - str에 나타나는 숫자 중 최소값과 최대값을 찾아 이를 "(최소값) (최대값)"형태의 문자열을 리턴하라
  • 주어진 자료는 무엇인가?
     - s = 숫자가 담긴 string

2. 계획

  1. 문자열을 쪼개서 숫자로 타입을 변환 한 다음에 배열에 넣는다.
  2. 이중에서 가장 작은 값과 큰 값을 리턴한다.

3. 실행

  • 풀이 계획을 실행하고, 각 단계가 올바른지 점검하라.
const solution = (s) => {
  const arr = s.split(' ').map((it) => Number(it));
  return `${Math.min(...arr)} ${Math.max(...arr)}`
}

test('findMaxAndMinNumber', () => {
  expect(solution("1 2 3 4")).toEqual("1 4");
});

4. 반성

  • 최대값 최소값 구할 때 배열을 펼쳐야 한다는 것을 잊고 있었다. 그래서 이부분에서 에러가 났다. 템플릿 리터럴을 잘못 사용한 줄 알고 템플릿 리터럴 사용법에 대해서 구글링을 했었는데 다시 코드를 처음부터 살펴보니 최댓값 최솟값 구하는 부분이 잘 못 되었다는 것을 알았다. 에러가 생길때에는 좀 더 차근차근 살펴봐야겠다.

 

댓글