using namespace std;
 
int len[26][26];
 
int main(){
    //计算每个字母变成其他字母要多少步,0到25表示的是a到z,len[0][25]表示的就是a到z需要多少步
    for(int i=0;i<26;++i){
        for(int j=0;j<26;++j){
            len[i][j]=min(abs(i-j),26-abs(i-j));//abs(x)计算的是x的绝对值
        }
    }
    //给ans初始化一个题目结果达不到的很大的值
    int ans=1<<30;
    string s;
    cin>>s;
    //最后所有字母相等的时候等于的是哪个字母呢?我们可以不去计算跟考虑,因为只有26个字母
    //我们直接遍历26种情况,取其中最小的就可以了
    for(int i=0;i<26;++i){
        int count=0;
        for(int j=0;j<s.length();++j) count+=len[i][s[j]-'a'];
        if(count<ans) ans=count;
    }
    cout<<ans;
    return 0;
}