#4468. 借书

借书

借书

题目描述

在绿洲市的图书馆中,管理员小 A 负责管理一排编号从 11NN 的书籍,第 ii 本书的分类编号为 CiC_i。每本书的分类编号唯一,同一个分类编号的图书可能会有多本。

由于图书馆正在进行整理,小 A 发现有 MM 本书被读者借走,借走的书籍编号为 B1BMB_1 \sim B_M

现在,小 B 想要从剩余的书籍中挑选两本属于同一类别的书籍(即:分类编号相同)。请问小 B 有多少种挑选方案?

输入格式

第一行读入两个整数 N,MN, M,分别表示书籍总数和被借走的书籍数量。
第二行读入 NN 个整数 C1CNC_1 \sim C_N,表示每本书的分类编号。
第三行读入 MM 个整数 B1BMB_1 \sim B_M,表示被借走的书籍编号。

输出格式

输出一个整数,表示小 B 可能挑选两本同一类别书籍的方案数。

样例输入 1

10 3
1 1 2 2 1 1 1 3 3 2
3 5 9

样例输出 1

7

样例说明 1

初始书籍类别序列为:1 1 2 2 1 1 1 3 3 2
被借走的书籍编号为 335599,对应类别编号为 221133
剩余书籍的类别序列为:1 1 2 1 1 3 2

  • 类别 11 的书籍有 44 本(剩余序列中位置 1,2,4,51, 2, 4, 5),挑选两本的方案数为 (42)=6\binom{4}{2} = 6
  • 类别 22 的书籍有 22 本(剩余序列中位置 3,73, 7),挑选两本的方案数为 (22)=1\binom{2}{2} = 1
  • 类别 33 的书籍仅 11 本,无法挑选两本。

总方案数:6+1=76 + 1 = 7

样例输入 2

12 0
1 2 2 1 3 3 1 1 2 3 1 2

样例输出 2

19

样例输入 3

16 5
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
2 4 6 8 10

样例输出 3

55

数据范围与约定

  • 对于 100%100\% 的数据:0MN10000 \leq M \leq N \leq 10001Ci1001 \leq C_i \leq 1001BiN1 \leq B_i \leq N
  • 特殊测试点:
    • 30%30\% 的数据满足 M=0M = 0(无书籍被借走);
    • 另外 30%30\% 的数据满足 Ci=1C_i = 1(所有书籍为同一类别)。