10. Враг слаб#
| 🎯 Уровень | 🔴 Senior |
| 🔗 Источник | Codeforces 61E — Enemy is weak |
| 📊 Сложность | 1900 |
| 🏷️ Темы | дерево Фенвика |
📝 Условие#
Даны различные числа. Посчитайте количество троек i < j < k, где a_i > a_j > a_k.
📥 Входные данные#
В первой строке число n (3 ≤ n ≤ 10⁶). Во второй — n различных чисел a_i (1 ≤ a_i ≤ 10⁹).
📤 Выходные данные#
Одно число — количество троек i < j < k с a_i > a_j > a_k (используйте long long).
🧪 Тесты#
Тест 1#
Ввод:
3
3 2 1
Вывод:
1
Тест 2#
Ввод:
3
2 3 1
Вывод:
0
Тест 3#
Ввод:
4
10 8 3 1
Вывод:
4
Тест 4#
Ввод:
4
1 5 4 3
Вывод:
1
Заметка
Оригинальное условие и проверка решения на всех тестах — по ссылке на источник.
💡 Подсказка#
Открыть, если застрял(а) больше чем на 20 минут
Для каждого j: (больших слева) × (меньших справа). Сжатие координат + Фенвик.