으하하 공부일기
[SWEA] - 1989. 초심자의 회문 검사 (D2) 본문
[문제]
"level" 과 같이 거꾸로 읽어도 제대로 읽은 것과 같은 문장이나 낱말을 회문(回文, palindrome)이라 한다.
단어를 입력 받아 회문이면 1을 출력하고, 아니라면 0을 출력하는 프로그램을 작성하라.
[제약 사항]
각 단어의 길이는 3 이상 10 이하이다.
[입력]
가장 첫 줄에는 테스트 케이스의 개수 T가 주어지고, 그 아래로 각 테스트 케이스가 주어진다.
각 테스트 케이스의 첫 번째 줄에 하나의 단어가 주어진다.
[출력]
출력의 각 줄은 '#t'로 시작하고, 공백을 한 칸 둔 다음 정답을 출력한다.
(t는 테스트 케이스의 번호를 의미하며 1부터 시작한다.)
문제 풀기
1989. 초심자의 회문 검사
[풀이]
- arr1 배열에는 입력받은 문자열을 단어 하나하나 분리하여 담아준다.
- arr2 배열에는 arr1 배열을 거꾸로 담아서 두 배열을 비교한다.
import java.util.Arrays;
import java.util.Scanner;
class Solution {
public static void main(String[] args) throws Exception {
Scanner sc = new Scanner(System.in);
int t = sc.nextInt();
for(int tc=1; tc<=t; tc++) {
String s = sc.next();
boolean check = true;
char arr1[] = new char[s.length()];
char arr2[] = new char[s.length()];
for(int i=0; i<s.length(); i++) {
arr1[i] = (char)s.charAt(i);
arr2[s.length()-1-i] = arr1[i];
}
check = Arrays.equals(arr1, arr2);
if(check) System.out.format("#%d %d\n", tc, 1);
else System.out.format("#%d %d\n", tc, 0);
}
}
}
'SWEA > D2' 카테고리의 다른 글
[SWEA] - 2005. 파스칼의 삼각형 (D2) (0) | 2022.04.22 |
---|---|
[SWEA] - 2001. 파리 퇴치 (D2) (0) | 2022.04.22 |
[SWEA] - 1986. 지그재그 숫자 (D2) (0) | 2022.04.22 |
[SWEA] - 1984. 중간 평균값 구하기 (D2) (0) | 2022.04.22 |
[SWEA] - 1983. 조교의 성적 매기기 (D2) (0) | 2022.04.22 |