import java.util.Scanner;

//.
public class Cetvrti {

    public static void main(String[] args) {
        Scanner ul = new Scanner(System.in);
        long n = ul.nextLong(); // unos broja

        if (n < 0) {
            n *= -1;
        }

        long n1 = n; // broj u kome cuvam n, jer cu ga menjati
        int i = 0;
        int resenje = 0;
        //unos u niz
        //-----------------
        while (n > 0) { // izbroji cifre 
            n = n / 10;
            i++;
        }
        long[] niz = new long[(i == 0) ? 1 : i];
        n = n1;
        i--;
        while (n > 0) {
            niz[i--] = n % 10;
            n = n / 10;
        }
        //------------------- 

        int br = 0;

        boolean fin = true;
        int x = 0, cuvanoJ = 0, cuvanoK = 0, max = 0, maxJ = 0, maxK = 0;
        for (int j = 0; j < niz.length; j++) {
            for (int k = j + 1; k < niz.length; k++) {
                if (niz[j] == niz[k] && j != k - 1) {
                    cuvanoJ = j;
                    cuvanoK = k;
                    x++;
                }
            }
            if (x > max) {
                max = x;
                maxJ = cuvanoJ;
                maxK = cuvanoK;
                fin = false;
            }

            x = 0;
            cuvanoJ = 0;
            cuvanoK = 0;

        }

        if (max == 1 && niz[niz.length - 1] != 0 && niz[0] == niz[maxK]) { // ako mi je prvi broj jedan od onih do kojih treba da se dodje, postavi ga na 0
            niz[0] = 0;
            resenje++;
        } else if (niz[maxK] == niz.length - 1) {// ako je poslednji broj jedan od onih do kojih treba da se dodje, postavi ga na 0
            niz[niz.length - 1] = 0;
            resenje++;
        } else { // ako nije, prodji kroz brojeve izmedju ta dva i postavi ih na taj broj
            for (int j = maxJ + 1; j < maxK; j++) {
                if (niz[j] != niz[maxJ]) {
                    niz[j] = niz[maxJ];
                    resenje++;
                }
            }
        }

        //ispisivanja
        for (int j = 0; j < niz.length - 2; j++) {
            if (niz[j] == niz[j + 1] && niz[j + 1] == niz[j + 2]) {

            }
        }

        if (niz.length != 1) {
            
        } else {
            resenje = 0;
            
        }

        if (max > niz.length / 2 + 1) {
            resenje = 0;
            for (int j = 0; j < niz.length - 1; j++) {

                if (niz[j] != niz[j + 1]) {
                    resenje++;
                }
            }
            
        }
        
        System.out.println(resenje);
        

    }
}