#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")