[SW1989] 초심자의 회문 검사
✏️ 𝗔𝗹𝗴𝗼𝗿𝗶𝘁𝗵𝗺/SW Expert Academy

[SW1989] 초심자의 회문 검사

 SW Expert Academy - 초심자의 회문 검사 

문제 링크

https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5PyTLqAf4DFAUq 

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com

 

문제 입출력

10
level
samsung
eye
exo
ioi
blackpink
hannah
B1A4
linetown
nursesrun
#1 1
#2 0
#3 1
#4 0
#5 1
#6 0
#7 1
#8 0
#9 0
#10 1

 

문제 풀이

import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStreamReader;


public class Solution {
	static int ans, T;


	public static void main(String[] args) throws Exception {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

		T = Integer.parseInt(br.readLine());
		for (int t = 1; t <= T; t++) {
			String str = br.readLine();

			if (check(str)) ans = 1;
			else ans = 0;

			System.out.println("#" + t + " " + ans);
		}

	} // end main


	private static boolean check(String str) {
		char[] c = str.toCharArray();
		int len = str.length();
		int lt = 0, rt = len - 1;

		// 왼쪽 끝과 오른쪽 끝에서 부터 시작하여 비교한다.
		// 만약 비교군이 다른 문자라면 바로 return false (회문이 아니라는 의미)
		while (lt < rt) {
			if (c[lt] != c[rt]) return false;
			else {
				// 같은 문자라면 왼쪽은 ->
				// 오른쪽은 <- 방향으로 
				lt++;
				rt--;
			}

		}

		return true;
	} // end check 
}

 

 

 

 

 

 

 

 

 

 

# SWEA 초심자의 회문 검사 # SW 초심자의 회문 검사 java


 

728x90