문제 링크 : https://www.acmicpc.net/problem/2908
1. 요구 사항 이해
시간, 메모리 제한 : 1초 / 128MB
1~9로 이루어진 세 자리 수 두개 입력
세자리 수를 역순으로 재배열
재배열한 수 중 더 큰쪽을 출력
2. 설계/검증
함수화
Scanner scan = new Scanner(System.in)
String num1 = scan.next();
String num2 = scan.next();
num1 num2 역순으로 재배열
비교하여 큰쪽 출력
복잡도
시간 복잡도 | 최악의 경우 | 공간 복잡도 |
O(1) | O(1) |
3. 정상 코드
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// 입력을 위한 객체 생성
Scanner scan = new Scanner(System.in);
// 세 자리 수 입력 * 2
String A = scan.next();
String B = scan.next();
// 숫자 유효성 검사 (세 자리 수, 0 포함 x )
if (A.length() != 3 || B.length() != 3 || A.contains("0") || B.contains("0")) {
return;
}
String reversedA = new StringBuilder(A).reverse().toString();
String reversedB = new StringBuilder(B).reverse().toString();
int numA = Integer.parseInt(reversedA);
int numB = Integer.parseInt(reversedB);
if (numA > numB) {
System.out.println(numA);
} else {
System.out.println(numB);
}
scan.close();
}
}
추가 정리
StringBuilder 객체의 reverse() 메서드
문자열 뒤집기
'◖코딩 테스트◗▬▬▬▬▬▬▬▬▬ > 백준' 카테고리의 다른 글
[백준] 11718 그대로 출력하기 (설명/코드/정답) (0) | 2024.07.05 |
---|---|
[백준] 5622 다이얼 (설명/코드/정답) (0) | 2024.07.02 |
[백준] 1152 단어의 개수 (설명/코드/정답) (0) | 2024.06.18 |
[백준] 2675 문자열 반복 (설명/코드/정답) (0) | 2024.06.17 |
[백준] 10809 알파벳 찾기 (설명/코드/정답) (0) | 2024.06.14 |