printРабочее место участника

printЗадачи

1768. Кодовый замок

Ограничения: время – 1s/2s, память – 64MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод copy
Послать решение Blockly Посылки Темы Где Обсудить (0)

Кодовый замок состоит из `N` рычажков, каждый из которых может быть установлен в любое из `K` положений, обозначенных натуральными числами от 1 до `K`. Известно, что для того чтобы открыть замок, нужно, чтобы сумма положений любых трех последовательных рычажков была равна `K`.
Два рычажка уже установлены в некоторые положения, и их переключать нельзя. Рычажок с номером `p_1` установлен в положение `v_1`, а рычажок `p_2` – в положение `v_2`.
Напишите программу, которая определит, сколькими способами можно установить остальные рычажки, чтобы открыть замок.
Вводятся натуральные числа `N`, `K`, `p_1`, `v_1`, `p_2`, `v_2`.
`3\ ≤\ N\ ≤\ 100\ 000`, `3\ ≤\ K\ ≤\ 100\ 000`, `p_1≠p_2`, `1\ ≤\ p_1\ ≤\ N`, `1\ ≤\ p_2\ ≤\ N`, `1\ ≤\ v_1\ ≤\ K`, `1 ≤ v_2 ≤ K`.
Выведите одно число — количество искомых комбинаций или 0, если, соблюдая все условия, замок открыть невозможно.

Пример ввода 1

3 3 1 1 2 1

Пример вывода 1

1

Пример ввода 2

3 3 1 1 3 2

Пример вывода 2

0

Пример ввода 3

4 4 1 1 4 1

Пример вывода 3

2

Пример ввода 4

5 3 1 1 4 1

Пример вывода 4

1
Источник: Московская командная олимпиада школьников по программированию, 2009/10 учебный год
loading