봄디의 개발일지
[백준 / 문자열] 10988번 : 팰린드롬인지 확인하기 - (JAVA/자바) 본문
📝 문제
💭 풀이 방법
- 맨 앞과 맨 뒤, 이런식으로 확인을 해야하므로, 맨 앞을 가리킬 수 있는 변수와 맨 뒤를 가리킬 수 있는 변수가 필요
- 문자열의 길이를 이용해서 맨 뒤를 가리킬 수 있는 변수 선언
- 짝을 지어 확인하므로 반복문은 문자열 길이의 절반만큼 돌아야한다.
- 예를 들어, "level" 이 있을 때 단어의 길이가 홀수(=5) 이므로, (l과 l), (e와 e) 두 번만 확인해주면 된다.
- "noon" 은 단어의 길이가 짝수(=4) 이므로 (n와 n), (o와 o) 두 번을 확인해줘야한다.
- 즉, 단어의 길이가 홀수일 때도, 5/2 = 2번만 확인해주면 되고, 짝수일 때도 4/2 = 2 번만 확인해주면 되므로 반복문은 문자열 전체 길이의 / 2 만큼 돌리면 된다
- 반복문을 통해 확인하다가 팰린드롬이 아니라면 check 변수를 사용하여 상태 바꿔주기
😊 작성한 코드
package String;
import java.util.Scanner;
public class 팰린드롬인지_확인하기 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String word = scanner.nextLine();
int count = word.length()-1; // 맨 마지막 인덱스를 가지고 있음
boolean check = true;
for(int i=0; i < word.length()/2; i++) {
if(word.charAt(i) != word.charAt(count)) {
System.out.println(0);
check = false;
break;
}
count--;
}
if(check)
System.out.println(1);
}
}
🚨 주의사항
- 백준문제를 자바로 푼 경우, 제출할 때는 class 이름은 Main으로, 코드 위에 package가 없어야한다.
'백준' 카테고리의 다른 글
[백준 / 배열] 3273번 : 두 수의 합 - (JAVA/자바) (0) | 2024.10.27 |
---|---|
[백준 / 문자열] 11365번 : !밀비 급일- (JAVA/자바) (0) | 2024.07.09 |
[백준 / 문자열] 11720번 : 숫자의 합 - (JAVA/자바) (0) | 2024.07.08 |
[백준 / 문자열] 10808번 : 알파벳 개수 - (JAVA/자바) (0) | 2024.07.08 |