在本题中:K 代表石头(rock),P 代表布(paper),N 代表剪刀(scissors)(源自波兰语单词 kamień, papier, nożyce)。
在石头剪刀布的对决中,两名选手同时出示三种手势之一。当两名选手出示不同的手势时,对决根据以下规则决出胜负:布胜过石头,石头胜过剪刀,剪刀胜过布。如果两名选手出示相同的手势,则重新进行。对决可能会无限期持续,导致平局。
今天是 AMPPKN* 比赛的日子。在如此高水平的比赛中,没有人会从对手的出招中推断出规律,因为担心会被对手利用这种狡猾的策略。随机出招也很困难,因此每位选手在开始前都在手臂上写下了一个策略——一个由字母 K、P 和 N 组成的字符串 $s$。在每场对决中,选手会从第一个字符开始循环重复他们的策略,例如 KPP 意味着按顺序出招:石头、布、布、石头、布、布,依此类推。
AMPPKN 比赛共有 $n$ 名选手,第 $i$ 名选手使用的策略由字符串 $s_i$ 描述。
主办方对寻找表现得像石头剪刀布一样的选手三人组感兴趣,这意味着每位选手都能战胜另外两人中的其中一人。
形式化地说,计算无序选手三人组的数量,使得这三名选手在某种排序 $(A, B, C)$ 下,满足 $A$ 战胜 $B$,$B$ 战胜 $C$,且 $C$ 战胜 $A$。
输入格式
第一行包含一个整数 $n$ ($3 \le n \le 10^5$)。
接下来的 $n$ 行,每行包含一个由字母 P、K、N 组成的非空字符串 $s_i$。所有字符串的总长度不超过 $10^6$。
输出格式
输出一个整数——满足条件的三人组数量。
样例
样例输入 1
6 P PN KK N PKK PN
样例输出 1
6
说明
共有 6 组这样的三人组:
(P, KK, N), (P, PKK, PN), (P, PKK, PN’), (PN, KK, N), (KK, N, PKK), (KK, N, PN’),
其中 PN’ 表示字符串 PN 的第二次出现。
例如,在第二个三人组中:P 会战胜 PKK(重复的布在第二步战胜石头),PKK 会战胜 PN,而 PN 会战胜 P。
*Akademickie Mistrzostwa Polski w Papier-Kamień-Nożyce