[Programmers] 가장 긴 팰린드롬 - 연습문제

동민·2021년 3월 11일
// 가장 긴 팰린드롬 - 연습문제
public class LongestPalindrome {
	public int solution(String s) {
		int answer = 1;
		for (int i = 0; i < s.length(); i++) {
			answer = Math.max(answer, palindrome(s, i, i)); // 팰린드롬이 홀수일 때
			answer = Math.max(answer, palindrome(s, i, i + 1)); // 팰린드롬이 짝수일 때
		}
		return answer;
	}
	
	private int palindrome(String s, int l, int r) {
		int left = l, right = r;
		while (left >= 0 && right < s.length() && s.charAt(left) == s.charAt(right)) {
			left--;
			right++;
		}
		return right - left - 1;
	}
}
profile
BE Developer

0개의 댓글