개발로그필름
[프로그래머스/JS] 더 크게 합치기 본문
728x90
반응형
SMALL
https://school.programmers.co.kr/learn/courses/30/lessons/181939
이번 문제는 쫌 쉬웠다!ㅎㅅㅎ
정수를 문자열로 바꿔서 합치고, 또 다시 정수로 바꿔서 return을 하는 방법이 맞나...?
좀 더 쉽고 빠른 코드가 있지 않을까 생각은 들었지만
도저히 다른 대안이 나오지 않아서,,
function solution(a, b) {
const a_string = a.toString();
const b_string = b.toString();
const ab = parseInt(a_string + b_string);
const ba = parseInt(b_string + a_string);
if (ab < ba){
return ba;
} else {
return ab;
}
}
다른 사람의 풀이를 보고 감명을 받아,,
여기에도 좀 적어보자면
function solution(a, b) {
return Math.max(Number(`${a}${b}`), Number(`${b}${a}`))
}
깔끔하게 한 줄로 끝내버리신 고수님.. 진짜 존경스럽고 폼 미쳤다
Math.max()
입력값으로 받은 0개 이상의 숫자 중 가장 큰 숫자 반환
console.log(Math.max(1, 3, 2));
// 3
Number()
Number("123"); // 123
Number("123") === 123; // true
Numer("unicorn") // NaN
Number(undefined); // NaN
${}
연산자를 사용하여 연결하지 않고 문자열 내에 변수를 중첩할 수 있는 기능 :: 문자열로 만들어주는 기능
따라서 고수님이 푼 방법은,,
${}로 a,b와 b,a를 문자열로 만들어 Number로 정수 변환 후 Math.max()로 크기 비교를 하신 것이다!!
반응형
LIST
'coding test > 프로그래머스' 카테고리의 다른 글
[프로그래머스/JS] 영어가 싫어요 (1) | 2024.02.16 |
---|---|
[프로그래머스/JS] n의 배수 (1) | 2023.11.19 |
[프로그래머스/JS] 문자열 곱하기 (0) | 2023.11.16 |
[프로그래머스/JS] 문자열 겹쳐쓰기 (0) | 2023.11.16 |
[프로그래머스] 숨어있는 숫자의 덧셈(1) javascript (1) | 2023.05.19 |
Comments