코딩테스트 - 프로그래머스/Lv. 0

[15] JAVA 두 수의 연산값 비교하기

유혁스쿨 2023. 11. 15. 14:42
728x90
반응형

문제설명

연산  는 두 정수에 대한 연산으로 두 정수를 붙여서 쓴 값을 반환합니다.

예를들면 다음과 같습니다.

  • 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 합니다.

[제출 답안]

class Solution {
    public int solution(int a, int b) {
        int answer = 0;
        if (a >= 1 && a <= 10000 && b >= 1 && b <= 10000) {
            int aSumB = Integer.parseInt(a + "" + b);
            int amultiplB = 2*a*b;
            answer = (aSumB > amultiplB || aSumB == amultiplB)  ? aSumB : amultiplB;
        }
        return answer;
    }
}

 

 

[풀이과정] 

위와 같이 3항 연산자를 활용하였다.


 

[다른 풀이]

return Integer.max(Integer.parseInt(a + "" + b), 2*a*b);

Integer.max()의 경우 두 수의 크기가 동일하다면 두 수중 어느 하나의 값이 반환된다.

728x90
반응형