Олимпиадный тренинг

Задача . F. Эмоциональные рыбаки


\(n\) рыбаков только что вернулись с рыбалки. \(i\)-й рыбак поймал рыбу веса \(a_i\).

Рыбаки собираются похвастаться пойманной рыбой друг перед другом. Для этого они сначала выбирают порядок, в котором они показывают пойманную рыбу (каждый рыбак показывает свою рыбу ровно один раз, то есть, формально, порядок является перестановкой целых чисел от \(1\) до \(n\)). Затем они показывают свою рыбу в соответствии с выбранным порядком. Когда рыбак показывает свою рыбу, он может стать радостным, грустным, или остаться спокойным.

Предположим, что рыбак показывает рыбу веса \(x\), и максимальный вес среди ранее показанных рыб равен \(y\) (\(y = 0\), если этот рыбак показывает свою рыбу первым). Тогда:

  • если \(x \ge 2y\), рыбак становится радостным;
  • если \(2x \le y\), рыбак становится грустным;
  • если ни одно из этих условий не выполняется, рыбак остается спокойным.

Назовем порядок, в котором рыбаки показывают свою рыбу, эмоциональным, если после того, как все рыбаки покажут свою рыбу, ни один из них не останется спокойным. Посчитайте количество эмоциональных порядков по модулю \(998244353\).

Входные данные

В первой строке задано одно целое число \(n\) (\(2 \le n \le 5000\)).

Во второй строке заданы \(n\) целых чисел \(a_1\), \(a_2\), ..., \(a_n\) (\(1 \le a_i \le 10^9\)).

Выходные данные

Выведите одно число — количество эмоциональных порядков, взятое по модулю \(998244353\).


Примеры
Входные данныеВыходные данные
1 4
1 1 4 9
20
2 4
4 3 2 1
0
3 3
4 2 1
6
4 8
42 1337 13 37 420 666 616 97
19200

time 4000 ms
memory 1024 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w645
Комментарий учителя