728x90
반응형
2024.11.09기준 - 브론즈3
728x90
백준, BEAKJOON, BOJ, JAVA, 자바
🟥 풀이
이 문제는 두 문자와 숫자를 비교하여 새로운 키 또는 " htg! "를 출력하는 문제입니다.
1. 입력 받은 문자열을 char[]에 저장해줍니다.
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
StringBuilder sb = new StringBuilder();
int n = Integer.parseInt(br.readLine()); // 문자열의 길이
char[] js = br.readLine().toCharArray(); // 정훈이의 문자열
char[] jk = br.readLine().toCharArray(); // 정훈의의 키
char[] is = br.readLine().toCharArray(); // 이안이의 문자열
char[] ik = br.readLine().toCharArray(); // 이안이의 키
2. 정훈이와 이안이의 문자가 같을 때, 조건문을 추가해 값을 생성합니다.
boolean check = true;
for (int i = 0; i < n; i++) {
if (js[i] == is[i]) {
if (jk[i] != ik[i]) { // 두 문자가 같을 때, 수가 다르다면
check = false;
break;
} else { // 두 문자가 같을 때, 수가 같다면
sb.append(ik[i]);
}
}
}
- 정훈이와 이안이의 문자가 다르다면 키 값이 무작위이기 때문에 어떤 키 값이 나와도 넘어갈 수 있습니다.
- 정훈이와 이안이의 문자가 같을 떄, 서로 키 값이 다르다면 도청을 하고 있는 것이고, 같다면 새로운 키가 됩니다.
3. 도청을 하지 않는다면 생성된 새로운 키를, 도청을 한다면 "htg!"를 출력합니다.
if (!check) {
sb = new StringBuilder();
sb.append("htg!");
}
bw.write(sb.toString());
🟪 코드
package Main;
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
StringBuilder sb = new StringBuilder();
int n = Integer.parseInt(br.readLine()); // 문자열의 길이
char[] js = br.readLine().toCharArray(); // 정훈이의 문자열
char[] jk = br.readLine().toCharArray(); // 정훈의의 키
char[] is = br.readLine().toCharArray(); // 이안이의 문자열
char[] ik = br.readLine().toCharArray(); // 이안이의 키
boolean check = true;
for (int i = 0; i < n; i++) {
if (js[i] == is[i]) {
if (jk[i] != ik[i]) { // 두 문자가 같을 때, 수가 다르다면
check = false;
break;
} else { // 두 문자가 같을 때, 수가 같다면
sb.append(ik[i]);
}
}
}
if (!check) {
sb = new StringBuilder();
sb.append("htg!");
}
bw.write(sb.toString());
bw.flush();
bw.close();
br.close();
}
}
728x90
반응형
'코딩테스트 일기 (BAEKJOON)' 카테고리의 다른 글
BEAKJOON / 백준 - JAVA 32498번 Call for Problems (0) | 2024.11.11 |
---|---|
BEAKJOON / 백준 - JAVA 32529번 래환이의 여자친구 사귀기 대작전 (0) | 2024.11.10 |
BEAKJOON / 백준 - JAVA 8320번 직사각형을 만드는 방법 (0) | 2024.11.08 |
BEAKJOON / 백준 - JAVA 2702번 초6 수학 (0) | 2024.11.07 |
BEAKJOON / 백준 - JAVA 29732번 Rick-Roll Virus (0) | 2024.10.02 |