QOJ.ac

QOJ

Süre Sınırı: 3 s Bellek Sınırı: 512 MB Toplam puan: 100 Zorluk: [göster]

#1257. Простая задача

İstatistikler

У вас есть последовательность цифр $1$ и $2$. За один шаг можно:

  1. Вставить $1$ в позицию, находящуюся правее всех остальных единиц (или в любую позицию, если единиц нет).
  2. Превратить любую $2$ в $1$, если справа от этой двойки нет единиц.
  3. Удалить самую правую $1$ (обратите внимание, что эта операция обратна операции 1).
  4. Превратить самую правую $1$ в $2$ (обратите внимание, что эта операция обратна операции 2).

Например, из последовательности $11212122$ за один шаг можно получить следующие последовательности:

  • Операцией 1: $112121122$, $112121212$, $112121221$.
  • Операцией 2: $11212112$, $11212121$.
  • Операцией 3: $1121222$.
  • Операцией 4: $11212222$.

Ваша задача — вычислить количество способов превратить последовательность ровно из $a$ двоек в последовательность ровно из $b$ двоек, выполнив ровно $t$ операций.

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

Единственная строка входных данных содержит три целых числа $a$, $b$ и $t$ ($0 \le a, b, t \le 10^6$).

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

Выведите количество способов получить последовательность из $b$ двоек из последовательности из $a$ двоек ровно за $t$ шагов. Поскольку это число может быть очень большим, выведите его по модулю простого числа $998\,244\,353$.

Примеры

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

0 0 4

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

3

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

1 4 6

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

60

Примечание

В первом примере нужно получить пустую последовательность из пустой последовательности за 4 шага. Это можно сделать следующими способами ($\varepsilon$ обозначает пустую последовательность):

$$ \varepsilon \to 1 \to \varepsilon \to 1 \to \varepsilon $$

$$ \varepsilon \to 1 \to 11 \to 1 \to \varepsilon $$

$$ \varepsilon \to 1 \to 2 \to 1 \to \varepsilon $$

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.