#include <iostream>
using namespace std;
#include <string>

char A[3][3][4] = {{{'a','b','c'},{'d','e','f'},{' ',' ',' '}},
{{'g','h','i'},{'j','k','l'},{'m','n','o'}}
,{{'p','q','r','s'},{'t','u','v'},{'w','x','y','z'}}
};  //三维数组存放键盘样式

//匹配按键
int point(char ch){
    for (int i = 0; i < 3; i++){
        for (int j = 0; j < 3; j++){
            for (int k = 0 ; k < 4; k++){
                if (ch == A[i][j][k]) return i*10+j;    //每一个按键的i*10+j都不同,可以用于区分按键 相当于一个密码的作用
            }
        }
    }
    return -1;
}

//计算按几下当前按键才是需要的字母 
int key(char ch){
    int p = point(ch);
    int i = p/10;
    int j = p%10;
    for (int k = 0; k < 4; k++){
        if (ch == A[i][j][k]) return k+1;//需要返回按下的次数
    }

    return -1;
}
int main() {
    string str;
    int m,n;

    while (cin >> str) { // 注意 while 处理多个 case
        int count = 0;  //时间段计数

        for (int i = 0; str[i] != '\0'; i++){
            //匹配按键
            m = point(str[i]);
            n = point(str[i+1]);

            if (str[i+1] == '\0') n = m+1; //最后一位 使m n不等

            if (m == n){
                count = count + key(str[i]) + 2;
            }
            else{
                count += key(str[i]);
            }
        }
        cout << count << endl;
    }
}
// 64 位输出请用 printf("%lld")