티스토리 뷰
728x90
문제
- 뒤에서부터 읽어도 똑같은 단어를 팰린드롬이라고 함
- 수의 숫자들을 뒤에서부터 읽어도 같다면 그 수는 팰린드롬수
- 앞에 무의미한 0이 올 수 있다면 010이 되어 팰린드롬수로 취급할 수도 있지만, 이 문제에서는 무의미한 0이 앞에 올 수 없음
- 121, 12421 등이 팰린드롬수
해결방법
입력받은 숫자를 문자열로 취급하여, 맨 뒤부터 접근하여 거꾸로 뒤집은 숫자를 입력받은 숫자와 비교할 수 있도록 하였다.
이 과정에서 두 숫자가 같으면 팰린드롬수로 판단하여 yes를, 다르다면 팰린드롬수가 아니기 때문에 no를 출력할 수 있도록 하였다.
코드
import java.io.*;
import java.util.*;
class Main{
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
while(true){
String num = br.readLine(); // 입력 받은 수
if(Integer.parseInt(num) == 0) break;
String reverseNum = ""; // 뒤집은 수
for(int i = num.length()-1; i>=0; i--){
reverseNum += num.charAt(i); // 입력 받은 수를 뒤집어 저장
}
if(num.equals(reverseNum)){ // 두 수 비교
System.out.println("yes");
}else{
System.out.println("no");
}
}
br.close();
}
}
728x90
'Algorithm > Baekjoon' 카테고리의 다른 글
[백준] 1654번 랜선 자르기(JAVA) (0) | 2022.07.09 |
---|---|
[백준] 1436번 영화감독 숌(JAVA) (0) | 2022.07.07 |
[백준] 1181번 단어 정렬(JAVA) (0) | 2022.07.05 |
[백준] 1085번 직사각형에서 탈출(JAVA) (0) | 2022.07.05 |
[백준] 1018번 체스판 다시 칠하기(JAVA) (0) | 2022.07.05 |
댓글