#include<bits/stdc++.h>
#define ll long long
using namespace std ;
int main()
{
ios_base::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
freopen("CLS.INP","r",stdin);
freopen("CLS.OUT","w",stdout);
string s ;
// CHAO CHUYEN LAM SON
getline(cin,s);
ll len = s.length();
vector<ll>prec(len+3,0);
vector<ll>pres(len+3,0);
prec[0]=0;
pres[len+1]=0;
prec[0]=0;
if(s[0]=='C')
{
prec[0]++;
}
for(ll i= 1 ; i<len;i++)
{
if(s[i]=='C')
{
prec[i]=prec[i-1]+1;
}
else
{
prec[i]=prec[i-1];
}
}
for(ll i =len-1;i>=0;i--)
{
if(s[i]=='S')
{
pres[i]=pres[i+1]+1;
}
else
pres[i]=pres[i+1];
}
ll res = 0 ;
for(ll i = 0;i<len;i++)
{
if(s[i]=='L')
{
res+=pres[i]*prec[i];
}
}
cout<<res<<endl;
return 0;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KI2RlZmluZSBsbCBsb25nIGxvbmcKdXNpbmcgbmFtZXNwYWNlIHN0ZCA7CmludCBtYWluKCkKewogICAgaW9zX2Jhc2U6OnN5bmNfd2l0aF9zdGRpbyhmYWxzZSk7CiAgICBjaW4udGllKDApOwogICAgY291dC50aWUoMCk7CiAgICBmcmVvcGVuKCJDTFMuSU5QIiwiciIsc3RkaW4pOwogICAgZnJlb3BlbigiQ0xTLk9VVCIsInciLHN0ZG91dCk7CiAgICBzdHJpbmcgcyA7Ci8vICAgIENIQU8gQ0hVWUVOIExBTSBTT04KICAgIGdldGxpbmUoY2luLHMpOwogICAgbGwgbGVuID0gcy5sZW5ndGgoKTsKICAgIHZlY3RvcjxsbD5wcmVjKGxlbiszLDApOwogICAgdmVjdG9yPGxsPnByZXMobGVuKzMsMCk7CiAgICBwcmVjWzBdPTA7CiAgICBwcmVzW2xlbisxXT0wOwogICAgcHJlY1swXT0wOwogICAgaWYoc1swXT09J0MnKQogICAgewogICAgICAgIHByZWNbMF0rKzsKICAgIH0KICAgIGZvcihsbCBpPSAxIDsgaTxsZW47aSsrKQogICAgewogICAgICAgIGlmKHNbaV09PSdDJykKICAgICAgICB7CiAgICAgICAgICAgIHByZWNbaV09cHJlY1tpLTFdKzE7CiAgICAgICAgfQogICAgICAgIGVsc2UKICAgICAgICB7CiAgICAgICAgICAgIHByZWNbaV09cHJlY1tpLTFdOwogICAgICAgIH0KICAgIH0KCiAgICBmb3IobGwgaSA9bGVuLTE7aT49MDtpLS0pCiAgICB7CiAgICAgICAgaWYoc1tpXT09J1MnKQogICAgICAgIHsKICAgICAgICAgICAgcHJlc1tpXT1wcmVzW2krMV0rMTsKICAgICAgICB9CiAgICAgICAgZWxzZQogICAgICAgIHByZXNbaV09cHJlc1tpKzFdOwogICAgfQogICAgbGwgcmVzID0gMCA7CiAgICBmb3IobGwgaSA9IDA7aTxsZW47aSsrKQogICAgewogICAgICAgaWYoc1tpXT09J0wnKQogICAgICAgewogICAgICAgICAgIHJlcys9cHJlc1tpXSpwcmVjW2ldOwogICAgICAgfQogICAgfQogICAgY291dDw8cmVzPDxlbmRsOwogICAgcmV0dXJuIDA7Cn0K