우당탕탕 개발일지
[SWEA] 1989. 초심자의 회문 검사(Java, D2) 본문
반응형
문제
"level" 과 같이 거꾸로 읽어도 제대로 읽은 것과 같은 문장이나 낱말을 회문(回文, palindrome)이라 한다.
단어를 입력 받아 회문이면 1을 출력하고, 아니라면 0을 출력하는 프로그램 구현
입출력 예
풀이
단어의 가운데 있는 문자를 기준으로 양쪽이 동일한지 확인하면 된다.
level의 경우, {0번 문자와 4번 문자}, (1번 문자와 3번문자} 가 동일한지 확인하면 된다.
따라서 가운데 문자의 인덱스를 구한 후, 양쪽을 비교한다.
양쪽 문자 비교는 for문을 문자의 인덱스까지 반복한다.
코드
Scanner sc = new Scanner(System.in);
int tc = sc.nextInt();
for (int t = 0; t < tc; t++) {
int result = -1;
String str = sc.next();
int a = str.length() / 2; // 가운데 Index
char[] strChar = str.toCharArray();
for (int i = 0; i < a; i++) {
if (result != 0) {
if (strChar[i] == strChar[str.length() - (i + 1)]) {
result = 1;
} else
result = 0;
}
}
System.out.println("#" + (t + 1) + " " + result);
SWEA 문제
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5PyTLqAf4DFAUq
SW Expert Academy
SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!
swexpertacademy.com
반응형
'코테 > SW Expert Academy' 카테고리의 다른 글
[SWEA] 14178. 1차원 정원(Java, D3) (0) | 2024.05.13 |
---|---|
[SWEA] 1983. 조교의 성적 매기기(Java, D2) (0) | 2024.04.29 |
[SWEA] 1979. 어디에 단어가 들어갈 수 있을까(Java, D2) (0) | 2024.04.29 |
[SWEA] 1926. 간단한 369게임(Java, D2) (0) | 2024.04.25 |
[SWEA] 1859. 백만 장자 프로젝트(Java, D2) (0) | 2024.04.25 |