import java.util.Scanner;

public class Main {

    public static boolean[][] answerAry;
	
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String s = sc.nextLine().trim();
        int n = s.length();
		
	// 이 후 Index 계산을 편하게 하기 위한 방법
        s = " " + s;
        answerAry = new boolean[n+1][n+1];
        for(int i = 1; i <= n; i++) {
            answerAry[i][i] = true;			
        }
        for(int i = 1; i < n; i++) {
            if(s.charAt(i) == s.charAt(i+1))
                answerAry[i][i+1] = answerAry[i+1][i] = true;
        }		
		
        makeAnswerAry(s, n);
		
        int[] d = new int[n+1];
        for(int i = 1; i <= n; i++) {
            for(int j = 1; j <= i; j++) {
                if(answerAry[j][i]) {
                    if(d[i] == 0 || d[i] > d[j-1] + 1) {
                        d[i] = d[j-1] + 1;
                    }
                }
            }
        }
        System.out.println(d[n]);
    }
    public static void makeAnswerAry(String s, int n) {
        for(int i = 2; i < n; i++) {
            for(int j = 1; j <= n - i; j++) {
                if(s.charAt(j) == s.charAt(j+i) && answerAry[j+1][j+i-1]) {
                    answerAry[j][j+i] = answerAry[j+i][j] = true;
                }	
            }
        }
    }
}