개발자가 되

프로그래머스 Lv.0

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

dltjdud 2025. 1. 21. 15:50

문제설명

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

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

 

입출력 예 설명

입출력 예 #1
a ⊕ b = 291 이고, 2 * a * b = 364 입니다. 둘 중 더 큰 값은 364 이므로 364를 return 합니다.


입출력 예 #2
a ⊕ b = 912 이고, 2 * a * b = 364 입니다. 둘 중 더 큰 값은 912 이므로 912를 return 합니다.

 

풀이

 

JAVA

class Solution {
    public int solution(int a, int b) {
        int answer = 2 * a * b;
        int n = Integer.parseInt(("" + a + b));

        if (answer > n){
            return answer;
        } else {
            return n;
        }
    }
}

 

Python

def solution(a, b):
    ab=0
    if int(str(a)+str(b))>2*a*b:
        ab=int(str(a)+str(b))
    else:
        ab= 2*a*b
    return ab

*한줄 코딩

def solution(a, b):
    return max(int(str(a) + str(b)), 2 * a * b)

 

JS

function solution(a, b) {
    let str = Number(String(a) + String(b));
    let num = 2 * a * b;
    if (str > num) {
      return str;
    } else if (str < num) {
      return num;
    } else if (str === num) {
      return str;
    }
  }

'프로그래머스 Lv.0' 카테고리의 다른 글

Lv.0 공배수  (0) 2025.01.22
Lv.0 n의 배수  (0) 2025.01.21
Lv.0 더 크게 합치기  (0) 2025.01.20
Lv.0 문자열 곱하기  (0) 2025.01.20
Lv.0 문자 리스트를 문자열로 변환하기  (0) 2025.01.19