1. 문제
https://www.acmicpc.net/problem/2864
2. 풀이
- 문자열을 하나씩 쪼개어 붙이기 위해 StringBuilder를 사용
- 각 a와 b 중 5가 나오면 6을, 6이 나오면 5를 담을 수 있는 조건을 만들고, 5와 6이 없으면 기존 문자를 담는 조건을 만든다.
- 문자열이므로 int로 형 변환 진행 후 출력
3. 코드
package baekjoon;
import java.util.Scanner;
public class Q2864 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String a = scanner.next();
String b = scanner.next();
StringBuilder minA = new StringBuilder();
StringBuilder maxA = new StringBuilder();
StringBuilder minB = new StringBuilder();
StringBuilder maxB = new StringBuilder();
for (int i = 0; i < a.length(); i++) {
if (a.charAt(i) == '5') {
maxA.append("6");
} else {
maxA.append(a.charAt(i));
}
if (a.charAt(i) == '6') {
minA.append("5");
} else {
minA.append(a.charAt(i));
}
}
for (int i = 0; i < b.length(); i++) {
if (b.charAt(i) == '5') {
maxB.append("6");
} else {
maxB.append(b.charAt(i));
}
if (b.charAt(i) == '6') {
minB.append("5");
} else {
minB.append(b.charAt(i));
}
}
int min = Integer.parseInt(minA.toString()) + Integer.parseInt(minB.toString());
int max = Integer.parseInt(maxA.toString()) + Integer.parseInt(maxB.toString());
System.out.println(min + " " + max);
}
}
'Algorithm' 카테고리의 다른 글
[Java] 백준 1157 : 단어 공부 (0) | 2022.06.04 |
---|---|
[Java] 백준 11944 : NN (0) | 2022.04.01 |
[Java] 백준 10820번 : 문자열 분석 (0) | 2022.03.16 |
[Java] 백준 1100번 : 하얀 칸 (0) | 2022.03.10 |
[Java] 백준 21312번 : 홀짝 칵테일 (0) | 2022.03.08 |