코딩테스트/프로그래머스

[프로그래머스] Lv.0 더 크게 합치기(Java) ※

선SEON 2023. 10. 19. 14:54

1. 문제

2. GPT의 풀이

public class Solution {
    public int solution(int a, int b) {
        // a ⊕ b 구하기
        int ab = Integer.parseInt(Integer.toString(a) + Integer.toString(b));
        // 2 * a * b 구하기
        int product = 2 * a * b;
        
        // 두 값 중에서 큰 값을 반환
        if (ab > product) {
            return ab;
        } else {
            return product;
        }
    }
}

 

3. 다른 풀이

class Solution {
    public int solution(int a, int b) {
        return Math.max(Integer.parseInt(String.valueOf(a)+String.valueOf(b)),2*a*b);
    }
}

정수 a와 b를 문자열로 변환한 후 이어붙인 뒤 다시 정수로 변환

 

Math.max 메서드로 두 값을 비교, 그 중 큰 값을 반환

class Solution {
    public int solution(int a, int b) {
        int ab = Integer.parseInt(a + "" + b);
        if(2 * a * b <= ab) {
            return ab;
        } else {
            return 2 * a * b;
        }
    }
}