문제 정보


항목 내용
플랫폼 Programmers
난이도 Lv.0
문제 번호 181939
문제 링크 문제 보기
GitHub Link C++/프로그래머스/0/181939. 더 크게 합치기

문제


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

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

양의 정수 ab가 주어졌을 때, abba 중 더 큰 값을 return 하는 solution 함수를 완성해 주세요.

단, abba가 같다면 ab를 return 합니다.

제한사항


- 1 ≤ a, b < 10,000

입출력 예


a | b | result

9 | 91 | 991

89 | 8 | 898

입출력 예 설명

입출력 예 #1

- a ⊕ b = 991 이고, b ⊕ a = 919 입니다. 둘 중 더 큰 값은 991 이므로 991을 return 합니다.

입출력 예 #2

- a ⊕ b = 898 이고, b ⊕ a = 889 입니다. 둘 중 더 큰 값은 898 이므로 898을 return 합니다.

풀이 코드


더 크게 합치기.cpp

#include <string>
#include <vector>

using namespace std;

int solution(int a, int b) {
    int answer = 0;

    string num_a = to_string(a);
    string num_b = to_string(b);

    string number_a = num_a + num_b;
    string number_b = num_b + num_a;

    int answer_a = stoi(number_a);
    int answer_b = stoi(number_b);

    if (answer_a >= answer_b) {
        answer = answer_a;
    }
    else
    {
        answer = answer_b;
    }

    return answer;
}