알고리즘공부(Algorithm Study)/문제풀이(ProblemSolving)

백준 25501 재귀의 귀재(재귀)

Chaany 2022. 11. 26.
728x90
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class boj_25501_재귀의귀재 {
    static int count;

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

        int T = Integer.parseInt(br.readLine());
        int answer[][] = new int[T][2];

        for(int i = 0; i < T; i++) {
            String temp = br.readLine();
            count = 0;
            sb.append(isPalindrome(temp) + " " + count + "\n");
        }

        System.out.println(sb.toString());
    }

    public static int recursion(String s, int l, int r){
        count++;
        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){
        return recursion(s, 0, s.length()-1);
    }
}

재귀는 BFS, DFS 를 배우기 위한 기본 내용이므로 기본기를 튼튼히 다지는 것이 매우 중요해 보인다...!

 

728x90

댓글