Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- github 100mb
- augmentedDevice
- camera permission
- dvh
- adb connect
- Recoil
- ffi-napi
- react-native
- device in use
- electron-packager
- rolldown
- github pdf
- camera access
- react-native-dotenv
- html
- vercel git lfs
- ELECTRON
- Can't resolve
- custom printing
- Each child in a list should have a unique "key" prop.
- nextjs
- github lfs
- npm package
- 티스토리 성능
- adb pair
- animation
- Failed to compiled
- silent printing
- Git
- 이미지 데이터 타입
Archives
- Today
- Total
Bleeding edge
[프로그래머스] 가장 큰 수 - 자바스크립트 본문
https://programmers.co.kr/learn/courses/30/lessons/42746
function solution(numbers) {
let list = []
for (let i = 0; i < numbers.length; i++) {
list.push(String(numbers[i]))
}
list.sort((a, b) => b.concat(a) - a.concat(b))
let answer = list.join('')
return answer[0] === "0" ? answer[0] : answer
}
concat으로 부텼을때, 더 큰 값을 앞으로 뺀뒤 join시켰다.
다른사람의 풀이
function solution(numbers) {
let strings = numbers.map(num => num + "");
const answer = strings.sort((a, b) => (b + a) - (a + b)).join("");
return answer[0] === "0" ? "0" : answer;
}
내기억으로 분명 저방법을 써서 안됬던거같은데 아마 내가 괄호를 빼서 안됬던거 같다..
피드백
사실 한개의 케이스 빼고는 모두 쉽게 해결했다. 1개의 케이스 같은경우에는 return의 statement로 해결했다. 바로 첫번째 글자가 0이면 000000과 같은 값이 나올텐데 이는 문자라 이렇게 나온거지 실제는 0으로 출력되야하기 때문이다. 그래도 5분이내에 boundary condition에 대해서 생각해서 해결했으며, 앞으로도 boundary condition에 대해서 자주 생각해볼 것.
'코딩테스트 공부' 카테고리의 다른 글
[프로그래머스] 영어 끝말잇기 - 자바스크립 (0) | 2022.04.12 |
---|---|
[프로그래머스] 2개 이하로 다른 비트 - 자바스크립트 (0) | 2022.04.12 |
[프로그래머스] 수식 최대화 - 자바스크립트 (0) | 2022.04.06 |
[프로그래머스] 다리를 지나는 트럭 - 자바스크립트 (0) | 2022.04.06 |
프로그래머스 튜플 (0) | 2022.04.05 |