더 크게 합치기
날짜 | 2023-10-08 |
사용 언어 | Java |
문제 유형 | 문자열 |
정답률 | 89% |
문제 URL | 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
나의 풀이 #
class Solution {
public int solution(int a, int b) {
int ab = Integer.parseInt(a+""+b);
int ba = Integer.parseInt(b+""+a);
return ab<ba ? ba : ab;
}
}
다른 사람의 풀이 #
class Solution {
public int solution(int a, int b) {
return Math.max(Integer.parseInt(a + "" + b), Integer.parseInt(b + "" + a));
}
}
좌(나의 풀이) 우(Math사용) Math 함수를 사용할 경우 약간의 시간이 더 걸린다.
관련개념 학습 #
int a = 2+3;
double b = 2+(double)3;
String c = ""+2+3;
System.out.printf("a : %d\nb : %f\nc : %s", a, b, c);
연산 결과
a : 5
b : 5.000000
c : 23
Java에서는 Double + int나 String + int 등 다른 연산자와의 연산 시 자동 캐스팅 된다.