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

Задача . G. Бандитский блюз


Джапате, путешествуя через леса Мала, увидел N мешков с золотом, лежащих в ряд. У каждого мешка есть своя масса, отличная от масс других мешков, от 1 до N. Джапате может унести с собой только один мешок с золотом, поэтому он использует стратегию для выбора мешка: изначально он стартует с пустым мешком (массы 0), после чего начинает идти вдоль ряда мешков, и если он видит, что текущий мешок тяжелее мешка в его руках, он подбирает текущий мешок.

Джапате понял, что если он пойдёт слева направо, то он подберёт A мешков, а если он пойдёт справа налево, он подберёт B мешков.

Теперь ему интересно, сколько существует таких перестановок мешков, в которых он подбирает A мешков, идя слева направо и B мешков, идя справа налево, используя вышеупомянутую стратегию.

Так как ответ может быть крайне велик, выведите его по модулю 998244353.

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

В единственной строке ввода содержится три целых числа, разделённых пробелами — N (1 ≤ N ≤ 105), A и B (0 ≤ A, B ≤ N)

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

Выведите одно целое число — число подходящих перестановок по модулю 998244353.

Примечание

В примере 1 единственная возможная перестановка — [1]

В примерах 2 и 3 возможны всего две перестановки размера 2:{[1, 2], [2, 1]}. Величины a и b для первой перестановки равны 2 и 1 соответственно, а для второй перестановки эти величины равны 1 и 2 соответственно.

В примере 4 из 120 возможных перестановок [1, 2, 3, 4, 5] всего 22 удовлетворяют заданным в примере a и b.


Примеры
Входные данныеВыходные данные
1 1 1 1
1
2 2 1 1
0
3 2 2 1
1
4 5 2 2
22

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

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