Контест Middle Два указателя спрашивают часто обновлено
Различные тройки с нулевой суммой
Условие
Дан массив целых чисел. Посчитайте, сколько существует различных по значениям троек (x, y, z), x ≤ y ≤ z, таких что x + y + z = 0 и их можно составить из элементов массива с разными индексами.
Например, в массиве -1 0 1 2 -1 -4 такие тройки (-1, -1, 2) и (-1, 0, 1), ответ 2.
Ввод: в первой строке n (1 ≤ n ≤ 2000), во второй n чисел (|aᵢ| ≤ 2500).
Вывод: число различных троек.
Пример 1
Ввод:
6
-1 0 1 2 -1 -4
Вывод:
2
Пример 2
Ввод:
3
0 0 0
Вывод:
1
Как подойти
Подсказки: 2
- Отсортируйте массив и зафиксируйте первый элемент тройки.
- Пропускайте одинаковые значения, иначе одна тройка посчитается несколько раз.
Решите в тренажёре
Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.