一年一度的全国编程大赛开始了,来自各个学校的同学汇聚在首都,争夺编程竞赛的最高荣誉。
本次比赛共有 N 位学生参加。每位同学都有自己的名字和所在学校代码。同学的名字和所在学校代码都是由英文大写字母组成,其中同学名字由 2 \sim 10 个大写字母组成,学校代码由 2 个大写字母组成。
不同的学校,代码不同,来自同一个学校的同学,不会出现同名的情况。
小 A 发现了一个有趣的现象,在每位同学名字和所在学校代码的信息列表中,可以找到这样的数据对,第 i 个同学名字的前 2 个字母,恰好是第 j 个同学的学校代码,且第 j 个同学名字前 2 个字母,恰好是第 i 个同学的学校代码。
请你编程统计出:这样的有趣的数据对,共有多少对?请注意:同一个有趣数对的 2 位同学,要保证来自不同的学校。
第 1 行输入整数 N。
接下来的 N 行,每行包含两个字符串,分别表示学生的名字和其所属学校的代码。同一学校内不会有两个同名的学生。
输出一行一个整数,表示有趣的数据对的数量。
6 ZHANGXIAOMING LI WANGFANG JI LINA ZH JIANGSISI WA QIANLING QI QIANHANHAN QI
2
9 ALICE CH BOB FR CHARLIE AL DAVID FR ALYSSA CH FRANK DA GEORGE AB DANIEL FR ALEX CH
5
12 ALICE DA BOB AL CHARLIE AL DAVID AL EVE EV FRANK GH ALBERT DA HELEN EV EVAN EV JACK KA KATE JA DAISY AL
5
对于 30\% 的数据,1 \leq N \leq 10000。
对于 100\% 的数据,1 \leq N \leq 2 \times 10^5,学生名字长度不超过 10,学校代码长度为 2。
共有 2 个有趣的数据对。
第 1 位同学和第 3 位同学,构成有趣的数据对。
第 2 位同学和第 4 位同学,构成有趣的数据对。
第 5 位同学和第 6 位同学,由于来自同一所学校,无法构成有趣的数据对。