최댓값과 최솟값
문제 설명
문자열 s에는 공백으로 구분된 숫자들이 저장되어 있습니다. str에 나타나는 숫자 중 최소값과 최대값을 찾아 이를 (최소값) (최대값)형태의 문자열을 반환하는 함수, solution을 완성하세요.
예를들어 s가"1 2 3 4"
라면"1 4"
를 리턴하고,"-1 -2 -3 -4"
라면"-4 -1"
을 리턴하면 됩니다.제한 조건
- s에는 둘 이상의 정수가 공백으로 구분되어 있습니다.
입출력 예
s return "1 2 3 4" "1 4" "-1 -2 -3 -4" "-4 -1" "-1 -1" "-1 -1"
function solution(s){
var answer = []
s = s.split(' ').sort((a,b) => a/1-b/1)
answer = push(s[0], ' ', s[s.length-1])
var result = answer.join('')
return result
}
- 공백을 중심으로 split 한다.
- 오름차순으로 정렬한다.
- 첫번째 숫자와 마지막 숫자를 꺼낸다. 이 둘 사이에 공백을 추가한다.
- 이를 문자열로 반환한다.
나는 왜 굳이 배열에 넣어서 join해서 반환했을까..?
걍 s[0] + " " + s[s.length-1]
해서 문자열로 반환해도 되었을 것 같은데 말이지..
요즘 문득 드는 생각인데, 나에게 쉽고 간단했다 할지라도 "이건 쉬운 문제다", "너무 간단하다" 라는 표현은 지양해야겠다는 생각이 들었다. 사실 코테 연습을 처음 시작했을 때 정말 기초적인 문제도 어려워서 몇 시간을 헤맸고, 많은 삽질의 시간을 거쳐 결국 누군가 구현해 놓은 코드를 본 후 깊은 좌절감에 빠졌을 때, '간단하게 해결했다.' 는 표현에서 의도치 않게 상처를 받았다.
적어도 내 글을 보게 된 누군가가 상처받길 원하지 않기에...