#B. 三角形计数

    Type: Default 1000ms 256MiB

三角形计数

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

题目描述

小 Z 刚学习了三角形,他知道三角形的三条边一定满足任意两边之和大于第三边,任意两边之差小于第三边,同样的,满足这个条件的三条边一定能够组成三角形。

小 Y 看到小 Z 又学到了新的知识感到非常高兴,为了考察小 Z 是否真的掌握了三角形的知识。小 Y 立马出了一个题:

现在有三个序列 A,B,CA,B,CAA 序列有 n1n_1 和数,BB 序列有 n2n_2 个数,CC 序列有 n3n_3 个数,并且 BB 序列中的每一个数都大于 AA 序列中的每一个数,CC 序列中的每一个数都大于 BB 序列中的每一个数。

小 Y 让小 Z 分别从 A,B,CA,B,C 序列中各取出来 11 个数作为三角形的一条边,问能组成多少种不同的三角形?

小 Z 自然是知道怎么做的,现在他将这个问题交给了你。

「注意」

不同的三角形指的是:从 A,B,CA,B,C 序列中取出来的数,只要有一个数的位置(下标)不一样,就是不同的三角形,结合样例 11 理解。

输入格式

第一行输入三个整数 n1,n2,n3n_1,n_2,n_3 分别表示 A,B,CA,B,C 序列中元素的个数。

接下来一行有 n1n_1 个整数,为 a1,a2,,an1a_1,a_2,\cdots,a_{n_1}n1n_1AA 序列中的数字。

接下来一行有 n2n_2 个整数,为 b1,b2,,bn2b_1,b_2,\cdots,b_{n_2}n2n_2BB 序列中的数字。

接下来一行有 n3n_3 个整数,为 c1,c2,,cn3c_1,c_2,\cdots,c_{n_3}n3n_3CC 序列中的数字。

输出格式

输出一行一个整数表示成组成多少种不同的三角形。

样例 #1

样例输入 #1

2 1 2
3 3
4
6 6

样例输出 #1

4

样例 #2

样例输入 #2

3 3 2
2 4 3
6 7 5
8 9

样例输出 #2

9

样例 #3

样例输入 #3

见附件

样例输出 #3

见附件

提示

【样例 1 解释】

因为 A,B,CA,B,C 中取出来任意一个数都满足要求,所以有 2×1×2=42\times 1\times2=4 种可能,取出来都是 [3,4,6][3,4,6] 但是,下标不同,认为是不同的三角形。

【样例 2 解释】

不同的三角形有 $[2,7,8],[3,6,8],[3,7,8],[3,7,9],[4,5,8],[4,6,8],[4,6,9],[4,7,8],[4,7,9]$ 共 99 种。

【数据范围】

对于 40%40\% 的数据,1n1,n2,n31001 \le n_1,n_2,n_3 \le 100

对于 80%80\% 的数据,1n1,n2,n330001 \le n_1,n_2,n_3 \le 3000

对于 100%100\% 的数据,1n1,n2,n3100001 \le n_1,n_2,n_3 \le 10000 ,所有可用于组成三角形的数字范围为 [1,3×105][1,3 \times 10^5]

竞赛班集训3———枚举算法3

Not Attended
Status
Done
Rule
IOI
Problem
4
Start at
2024-10-19 17:30
End at
2024-10-29 17:30
Duration
240 hour(s)
Host
Partic.
6