CF817B Makes And The Product
题目描述
服完兵役归来的 Makes 收到了一份礼物——一个包含 $n$ 个正整数的数组 $a$。他很久没有刷题了,于是对这样一个问题产生了兴趣:在数组中,有多少组下标三元组 $(i, j, k)$(满足 $i < j < k$),使得 $a_{i}·a_{j}·a_{k}$ 取得可能的最小值?请你帮他解决这个问题。
输入格式
输入第一行包含一个正整数 $n\ (3 \leq n \leq 10^{5})$,表示数组 $a$ 的元素个数。
输入第二行包含 $n$ 个正整数 $a_{i}\ (1 \leq a_{i} \leq 10^{9})$,表示给定数组的元素。
输出格式
输出一个整数,表示三元组 $(i, j, k)$ 的数量,使得 $i, j, k$ 两两不同,且 $a_{i}·a_{j}·a_{k}$ 取得最小可能值。
说明/提示
在第一个样例中,Makes 总是从四个 $1$ 中选择三个,选择方法共有 $4$ 种。
在第二个样例中,所选三元组的数为 $(1,2,3)$(这里指的是数组元素而不是下标)。由于元素 $3$ 有两种选择方法,所以答案为 $2$。
在第三个样例中,所选三元组数为 $(1,1,2)$,只有一种选择下标的方法。
由 ChatGPT 5 翻译