#014 더 크게 합치기

Hyejin Kim·2023년 5월 3일
0

문제

연산 ⊕는 두 정수에 대한 연산으로 두 정수를 붙여서 쓴 값을 반환합니다. 예를 들면 다음과 같습니다.
12 ⊕ 3 = 123
3 ⊕ 12 = 312
양의 정수 a와 b가 주어졌을 때, a ⊕ b와 b ⊕ a 중 더 큰 값을 return 하는 solution 함수를 완성해 주세요.
단, a ⊕ b와 b ⊕ a가 같다면 a ⊕ b를 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 합니다.

풀이

#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>

int solution(int a, int b) {
  char string_ab[10];
  char string_ba[10];
    sprintf(string_ab, "%d%d", a, b);
    sprintf(string_ba, "%d%d", b, a);
    
    int num_AB = atoi(string_ab);
    int num_BA = atoi(string_ba);
    if (num_AB > num_BA)
        return num_AB;
    else
        return num_BA;
}

코드설명

sprintf 함수

배열 형태로 문자열을 저장할 수 있는 함수이다.
Sprintf 함수 상세설명 보기

출처:

코딩테스트

profile
Hello. I am a developer who is still developing.

0개의 댓글