#include<bits/stdc++.h>
#define int long long
using namespace std;
int ans=0,a[101],a1[101];
string s;
bool vowel(char c)
{
if(c=='A'||c=='E'||c=='I'||c=='O'||c=='U')
{
return 1;
}
return 0;
}
bool check()
{
bool flag=0;
for(int i = 0;i<s.size();i++)
{
if(s[i]=='L')
{
flag=1;
}
}
if(flag==0) return 0;
/*
for(int i = 0;i<s.size();i++)
{
if(s[i]=='L') cout<<"L"<<" ";
else cout << a[i]<< " ";
}
cout<<endl;*/
for(int i = 0;i<s.size()-3;i++)
{
if(a[i]==1&&a[i+1]==1&&a[i+2]==1)
{
return 0;
}
if(a[i]==0&&a[i+1]==0&&a[i+2]==0)
{
return 0;
}
}
return 1;
}
void dfs(int k,int sum)
{
if(k==s.size())
{/*
for(int i = 0;i<s.size();i++)
{
if(s[i]=='L') cout<<"L"<<" ";
else cout << a[i]<< " ";
}
cout<<endl;
cout<<sum<<endl;*/
if(check())
{
ans+=sum;
}
return;
}
if(a[k]==-1)
{
a[k]=1;
dfs(k+1,sum*5);
a[k]=0;
dfs(k+1,sum*20);
s[k]='L';
dfs(k+1,sum);
s[k]='_';
a[k]=-1;
}
else
{
dfs(k+1,sum);
}
}
signed main()
{
cin >> s;
for(int i = 0;i<s.size();i++)
{
if(s[i]=='_') a[i]=-1;
else if(vowel(s[i]))
{
a[i]=1;
}
}
dfs(0,1);
cout<<ans<<endl;
return 0;
}
有没有大佬帮我看一下