https://www.acmicpc.net/problem/25501
<문제요약>
팰린드롬 문제
팰린드롬 여부와 재귀 횟수를 출력
<문제 풀이>
package baekjoon;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class P25501 {
public static void main(String[] args) throws IOException {
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
int T=Integer.parseInt(br.readLine());
while (T-->0){
String s= br.readLine();
System.out.println(isPalindrome(s)+" "+cnt);
}
}
static int cnt=0;
public static int recursion(String s,int l,int r){
cnt++;
if(l>=r) return 1;
else if(s.charAt(l)!=s.charAt(r)) return 0;
else return recursion(s,l+1,r-1);
}
public static int isPalindrome(String s){
cnt=0;
return recursion(s,0,s.length()-1);
}
}
친절하게도 문제에서 recursion 함수와 isPalindrome 함수를 알려줬다
그냥 변수 cnt만 추가해주면 되는 문제
팰린드롬 문제가 알고리즘 문제로 종종 출제 되는데
앞으로 이렇게 풀어야겠다 ..