코딩 테스트/프로그래머스 (기초)

[C#][프로그래머스 > 코딩테스트 기초] 더 크게 합치기

스누ㅍl 2024. 7. 23. 15:36

프로그래머스 > 코딩테스트 연습 > 코딩 기초 트레이닝 >  더 크게 합치기

https://school.programmers.co.kr/learn/courses/30/lessons/181939

 

📒 문제

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

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

💻 소스코드

using System;

public class Solution {
    public int solution(int a, int b) {
        string strA = a.ToString();
        string strB = b.ToString();
        
        int ab = int.Parse(strA + strB);
        int ba = int.Parse(strB + strA);
        
        int answer = ab >= ba ? ab : ba;
        return answer;              
    }
}

 

다른 풀이

using System;

public class Solution {
    public int solution(int a, int b) {
     
        int ab = int.Parse($"{a}{b}");
        int ba = int.Parse($"{b}{a}");
        
        return Math.Max(ab,ba);
                
    }
}

 

참고 사이트

문자열 보간($): https://blockdmask.tistory.com/359

📝 풀이

각 정수를 문자열로 바꾸고 더한 다시 정수로 바꿔 대소비교를 했다.

 

좀 더 코드를 줄일 방법을 찾다가 문자열의 보간이란 것을 알게되었다.

보간을 사용하면 정수형 그대로 바로 문자열로 바꿀수있어서 훨신 편한 방법이었다.


관련 내용

 

[C# 문법] string 메서드 모음

string 메서드 내용 중 새로 알게되거나 사용했던 메서드들 기록하는 곳입니다. 주요 메서드Substring([시작위치], [문자열길이]): string의 시작위치부터 문자열 길이만큼 추출해준다.string str = "Hello W

twd0622.tistory.com