#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
//与 POJ 1850 相同 杨辉三角 组合数 没掌握
int c[30][30];
char s[40];
int main()
{
for(int i=0;i<30;i++)
{
c[i][0]=c[i][i]=1;
}
for(int i=1;i<30;i++)
{
for(int j=1;j<i;j++)
{
c[i][j]=c[i-1][j]+c[i-1][j-1];
}
}
while(scanf("%s",s+1)!=EOF)
{
int flag=0;
for(int i=1;i<=strlen(s+1);i++)
{
if(s[i]<s[i-1])
{
flag=1;
break;
}
}
int ans=0;
for(int i=1;i<strlen(s+1);i++)
{
ans+=c[26][i];
}
int t=0;
for(int i=1;i<=strlen(s+1);i++)
{
int ch=s[i]-'a'+1;
for(int j=t+1;j<ch;j++)
{
ans+=c[26-j][strlen(s+1)-i];//背 没掌握
}
t=ch;
}
ans=ans+1;
if(flag==1)
{
cout<<0<<endl;
}else
{
cout<<ans<<endl;
}
}
return 0;
}