CF817B.Makes And The Product
普及/提高-
通过率:0%
时间限制:2.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
After returning from the army Makes received a gift — an array a consisting of n positive integer numbers. He hadn't been solving problems for a long time, so he became interested to answer a particular question: how many triples of indices (i, j, k) (i < j < k), such that a__i·a__j·a__k is minimum possible, are there in the array? Help him with it!
从部队归来后,马克收到了一份礼物——一个由 n 个正整数组成的数组 a。他已许久未解题,因此对一个特定问题产生了兴趣:数组中满足 i<j<k 且乘积 ai⋅aj⋅ak 达到最小可能值的三元组索引 (i,j,k) 共有多少个?请帮他解决这个问题!
输入格式
The first line of input contains a positive integer number n (3 ≤ n ≤ 105) — the number of elements in array a. The second line contains n positive integer numbers a__i (1 ≤ a__i ≤ 109) — the elements of a given array.
输入的第一行包含一个正整数 n(3 ≤ n ≤ 105)—— 数组 a 的元素个数。
第二行包含 n 个正整数 ai(1 ≤ ai ≤ 109)—— 给定数组的元素。
输出格式
Print one number — the quantity of triples (i, j, k) such that i, j and k are pairwise distinct and a__i·a__j·a__k is minimum possible.
输出一个数字——满足条件的三元组 (i,j,k) 的个数,其中 i、j、k 两两不同,且 ai⋅aj⋅ak 取得最小可能值。
输入输出样例
输入#1
4 1 1 1 1
输出#1
4
输入#2
5 1 3 2 3 4
输出#2
2
输入#3
6 1 3 3 1 3 2
输出#3
1
说明/提示
In the first example Makes always chooses three ones out of four, and the number of ways to choose them is 4.
In the second example a triple of numbers (1, 2, 3) is chosen (numbers, not indices). Since there are two ways to choose an element 3, then the answer is 2.
In the third example a triple of numbers (1, 1, 2) is chosen, and there's only one way to choose indices.
在第一个例子中,Makes 总是从四个数中选择三个 1,选择的方式数为 4。
在第二个例子中,选择的是数字三元组 (1, 2, 3)(注意是数值,而非下标)。由于元素 3 有两种选择方式,因此答案为 2。
在第三个例子中,选择的是数字三元组 (1, 1, 2),而选择下标的方式仅有一种。
输入解题思路,AI测评打分。不知道怎么写?