17. Кодмастер

Не решаласьЛёгкая

Анонимный программист под псевдонимом Кодмастер уже не первый год поражает IT-индустрию своими инновационными проектами с открытым исходным кодом. Эксперты по разработке программного обеспечения пытаются разгадать секрет популярности Кодмастера. Чтобы приблизиться к ответу, к задаче привлекли вас. Кодмастер создаёт программы, использующие различные алгоритмы, и каждый алгоритм имеет свою сложность. Эксперты считают, что алгоритмы с линейной сложностью ($O(n)$) создают особую эффективность в программах Кодмастера. Вам нужно определить при помощи «индекса линейной сложности», насколько часто алгоритмы с линейной сложностью встречаются в проектах программиста.

Ваша задача: на основе набора $a_1,a_2,a_3,...,a_n$ (число алгоритмов с линейной сложностью в $n$ проектах Кодмастера) рассчитать «индекс линейной сложности», то есть такое максимальное число проектов k, что в каждом из них как минимум $k^2$ алгоритмов с линейной сложностью. Помогите сделать это максимально быстро.

Например: пусть в $5$ проектах $1,0,4,5,100$ алгоритмов с линейной сложностью. Тогда индекс равен $2$, так как есть хотя бы $2$ значения $a_i$, которые больше, чем $2^2$ $(4,5,100\geq2^2)$, при этом индекс меньше 3, так как только 1 значение $a_{i}$ больше $3^2$ $(100\geq3^2)$.

Формат ввода

В первой строке вводится число $n$ $(1\leq n\leq 10^7)$.

Во второй строке вводится набор целых чисел $a_{i}$ $(0 \leq a_{i} \leq 10^5)$ через пробел.

Формат вывода

Необходимо вывести число $k$ — «индекс линейной сложности».

Ограничения

Ограничение времени

10 с

Ограничение памяти

2 ГБ

Пример 1

Ввод
5
1 0 4 5 100
Вывод
2

Пример 2

Ввод
3
0 0 0
Вывод
0

Пример 3

Ввод
4
25 50 100 75
Вывод
4

Теги

Нужно войти, чтобы отправить решение.Войти