🔥 CodingTest/프로그래머스

[Lv.0] 두 수의 연산값 비교하기

김_수댕 2024. 4. 2. 11:17
반응형

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

✅ 문제

연산 ⊕는 두 정수에 대한 연산으로 두 정수를 붙여서 쓴 값을 반환합니다. 예를 들면 다음과 같습니다.

  • 12 ⊕ 3 = 123
  • 3 ⊕ 12 = 312

양의 정수 a와 b가 주어졌을 때, a ⊕ b와 2 * a * b 중 더 큰 값을 return하는 solution 함수를 완성해 주세요.

단, a ⊕ b와 2 * a * b가 같으면 a ⊕ b를 return 합니다.

제한 사항

• 1 ≤ a, b < 10,000

입출력 예

a b result
2 91 364
91 2 912

🔎 풀이 방법

string 타입으로 ‘+’로 ⊕ 기호를 계산해준다. 계산한 string 값을 Number로 형 변환해서 2 * a * b 하고 비교해 준다.

💻 제출한 코드

function solution(a, b) {
    let hap = Number(String(a) + String(b));
    return hap > (2 * a * b) ? hap : (2 * a * b);
}

👀 추가 공부

string 변환 방법: (a+""+b)

function solution(a, b) {
    let num1 = parseInt(a+""+b+"");
    let num2 = 2*a*b;
    return num1 > num2 ? num1 : num2;
}

최댓값 함수: Math.max()

function solution(a, b) {
    return Math.max(Number(`${a}${b}`), a * b * 2)
}
반응형