자료구조, 알고리즘

프로그래머스 코딩테스트 연습 [두 수의 연산값 비교하기]

shinetheworld 2025. 2. 21. 13:39

문제 설명

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

  • 12@3 = 123
  • 3@12 = 312

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

단, a@b2*a*b가 같다면 a@b를 return 합니다.

 

제한사항

  • 1 <= a, b < 10,000

 

입출력 예

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

해결

내 풀이

def solution(a, b):
    return max(int(str(a)+str(b)), 2*a*b)

 

이전 문제에서 새로 알게 된 점을 참고해 응용해 보았다.

2025.02.21 - [TIL] - 프로그래머스 코딩테스트 연습 [더 크게 합치기]