hye-log

[백준]1259번 팰린드롬수(JAVA) 본문

CodingTest/Baekjoon

[백준]1259번 팰린드롬수(JAVA)

iihye_ 2023. 8. 13. 19:52

0. 문제 링크

https://www.acmicpc.net/problem/1259

 

1259번: 팰린드롬수

입력은 여러 개의 테스트 케이스로 이루어져 있으며, 각 줄마다 1 이상 99999 이하의 정수가 주어진다. 입력의 마지막 줄에는 0이 주어지며, 이 줄은 문제에 포함되지 않는다.

www.acmicpc.net

 

1. 문제 설명

1) 팰린드롬 : 어떤 단어를 뒤에서부터 읽어도 똑같은 단어

2) 주어진 수가 팰린드롬이면 yes, 아니면 no 출력하기

 

2. 입출력

// input
121
1231
12421
0

// output
yes
no
yes

 

3. 코드

import java.io.*;
import java.util.*;

public class b1259 {

	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();
		
		while(true) {
			String str = br.readLine(); // 한 줄 입력 받기
			if(str.equals("0")) // 0이면 그만 (문자열 비교이므로 equals 사용)
				break;
			
			boolean flag = true; // flag를 true로 설정
			for (int i = 0; i < str.length(); i++) { // 문자열의 개수만큼 반복
				if(str.charAt(i) != str.charAt(str.length() - i - 1)) { // i번째와 str.length()-i-1번째가 다르면
					flag = false; // flag를 false로 설정
				}
			}
			
			if(flag == false) { // flag가 false면 no
				sb.append("no\n");
			} else { // flag가 true이면 yes
				sb.append("yes\n");
			}
		}
		bw.write(sb.toString()); // StringBuilder에 추가한 문자열 String으로 바꾸기
		bw.flush(); // 버퍼 작성하기
		bw.close();
	}

}

 

실행 결과

 

4. 회고

1) String 문자열 비교 시에는 equals 메소드 사용

2) String 문자열에 한 문자씩 접근할 때 charAt을 사용하여 접근

 

5. Github

https://github.com/iihye/Algorithm/blob/main/Baekjoon/b1259.java

728x90

'CodingTest > Baekjoon' 카테고리의 다른 글

[백준]1074번 Z(JAVA)  (0) 2023.08.14
[백준]1546번 평균(JAVA)  (0) 2023.08.13
[백준]10809번 알파벳 찾기(JAVA)  (0) 2023.08.13
[백준]10250번 ACM 호텔(JAVA)  (0) 2023.08.13
[백준]8958번 OX퀴즈(JAVA)  (0) 2023.08.13
Comments