每次找到最短距离,然后更新指针的位置。
AC代码:
#include<cstdio>
#include<cmath>
const int maxn=100+5;
char s[maxn];
int min(int a,int b){
return a<b?a:b;
}
int main(){
while(scanf("%s",s)!=EOF){
int ans=0;
int po=0;
for(int i=0;s[i]!='\0';++i){
ans+=min(fabs(s[i]-'a'-po),26-fabs(s[i]-'a'-po));
po=s[i]-'a';
}
printf("%d\n",ans);
}
return 0;
}
如有不当之处欢迎指出!