[Baekjoon] 10988번: 팰린드롬인지 확인하기
2023. 3. 13. 16:18ㆍComputer Sciences/Problem Solve
https://www.acmicpc.net/problem/10988
문제 설명
지난번에 이어 팰린드롬과 관련된 문제이다. 이 문제는 주어진 문자열이 팰린드롬인지 확인하고 맞다면 1, 아니라면 0을 출력하면 된다. 팰린드롬은 level과 같이 앞뒤로 읽어도 똑같은 문자열을 말한다.
풀이 방법
입력받은 문자열을 절반으로 자르고 뒷부분을 뒤집은 뒤 앞부분과 비교하는 방식으로 해결하였다.
package baekjoon.string;
import java.io.*;
public class BOJ10988 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
int mid = str.length() / 2;
String start = str.substring(0, mid);
String end = str.substring(mid);
StringBuilder sb = new StringBuilder(end);
String reversedEnd = sb.reverse()
// 문자열이 홀수라면 마지막 글자를 지우고, 아니라면 지우지 않는다.
.delete(str.length() % 2 == 1 ? sb.length() - 1 : sb.length(), sb.length())
.toString();
System.out.print(start.equals(reversedEnd) ? 1 : 0);
}
}
'Computer Sciences > Problem Solve' 카테고리의 다른 글
[Baekjoon] 2563번: 색종이 (0) | 2023.03.14 |
---|---|
[Baekjoon] 25206번: 너의 평점은 (0) | 2023.03.13 |
[Baekjoon] 1213번: 팰린드롬 만들기 (0) | 2023.03.12 |
[Baekjoon] 14889번: 스타트와 링크 (0) | 2023.03.10 |
[Baekjoon] 1926번: 그림 (0) | 2023.03.09 |