250x250
반응형
Notice
Recent Posts
Recent Comments
Link
N
(프로그래머스 C++)가장 큰 수 본문
728x90
반응형
https://programmers.co.kr/learn/courses/30/lessons/42746?language=javascript
코딩테스트 연습 - 가장 큰 수
0 또는 양의 정수가 주어졌을 때, 정수를 이어 붙여 만들 수 있는 가장 큰 수를 알아내 주세요. 예를 들어, 주어진 정수가 [6, 10, 2]라면 [6102, 6210, 1062, 1026, 2610, 2106]를 만들 수 있고, 이중 가장 큰
programmers.co.kr
numbers를 문자열 배열로 바꾼 후, 유니코드 내림차순으로 정렬을 한다.
그리고 join()함수로 배열을 문자열로 바꿔준다.
만약 answer[0] 이 0이라면 값은 0를 나타낸다.
[0, 0, 0]이 numbers로 들어온 경우 리턴값은 "000"이 된다.
이를 방지하기 위해 answer[0]을 검사하여 "0"만 리턴하도록 한다.
그렇지 않다면 answer를 리턴하면 된다.
function solution(numbers) {
const answer = numbers.toString()
.split(",")
.sort((a, b) => {
if(a + b > b + a){
return -1;
}
else if(a + b < b + a){
return 1;
}
})
.join("");
return answer[0] === "0" ? "0" : answer;
}
728x90
반응형
'프로그래머스 알고리즘 > 2단계' 카테고리의 다른 글
(프로그래머스 JS)최솟값 만들기 (0) | 2021.06.10 |
---|---|
(프로그래머스 JS)행렬의 곱셈 (0) | 2021.06.10 |
(프로그래머스 c++)2개 이하로 다른 비트 (0) | 2021.05.28 |
(프로그래머스 JS)게임 맵 최단거리 (0) | 2021.05.12 |
(프로그래머스 JS)괄호 회전하기 (0) | 2021.05.12 |