思路:
程式碼:
#define ll long long
#define N 300010
using namespace std;
ll n,ch[N][26],sz[N];
int main(){
ll i,x,tot=1;
cin>>n;
while(n--)
{
string s;
cin>>s;
for(i=0,x=1;i<s.size();i++)
{
sz[x]++;
if(!ch[x][s[i]-'a'])
{
ch[x][s[i]-'a']=++tot;
}
x=ch[x][s[i]-'a'];
}
sz[x]++;
}
ll ans=0;
for(i=2;i<=tot;i++)
{
ans+=sz[i]*(sz[i]-1)/2;
}
cout<<ans<<'\n';
return 0;
}