На конвейерной ленте перемещаются N продуктов, пронумерованных от 1 до N.
К конвейерной ленте прикреплен принтер Keyence, и продукт i попадает в его зону через T_i микросекунд и покидает её через D_i микросекунд.
Принтер Keyence может мгновенно напечатать на одном продукте, находящемся в зоне действия принтера (в частности, можно печатать в момент входа или выхода из зоны действия принтера).
Однако после каждой печати требуется 1 микросекунда для подзарядки, прежде чем он сможет напечатать снова.
Каково максимальное количество продуктов, на которых принтер может напечатать, если продукт и время для печати выбрать оптимально?

Ввод

Ввод поступает со стандартного ввода в следующем формате:
N
T_1 D_1
T_2 D_2
\vdots
T_N D_N

Вывод

Выведите максимальное количество продуктов, на которых принтер может напечатать.

Ограничения

- 1\leq N \leq 2\times 10^5
- 1\leq T_i,D_i \leq 10^{18}
- Все входные значения — целые числа.

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

5
1 1
1 1
2 1
1 2
1 4

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

4

Ниже мы будем просто называть момент t микросекунд от текущего времени как время t.
Например, можно напечатать на четырёх продуктах следующим образом:

- Время 1: Продукты 1,2,4,5 входят в зону действия принтера. Печать на продукте 4.
- Время 2: Продукт 3 входит в зону действия принтера, а продукты 1,2 покидают её. Печать на продукте 1.
- Время 3: Продукты 3,4 покидают зону действия принтера. Печать на продукте 3.
- Время 4.5: Печать на продукте 5.
- Время 5: Продукт 5 покидает зону действия принтера.

Напечатать на всех пяти продуктах невозможно, поэтому ответ — 4.

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

2
1 1
1000000000000000000 1000000000000000000

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

2

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

10
4 1
1 2
1 4
3 2
5 1
5 1
4 1
2 1
4 1
2 4

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

6

На конвейерной ленте движутся N продуктов, помеченных от 1 до N.
Принтер Keyence прикреплен к конвейерной ленте, и продукт i попадает в зону действия принтера через T_i микросекунд и покидает ее через D_i микросекунд.
Принтер Keyence может мгновенно печатать на одном продукте в зоне действия принтера (в частности, можно печатать в момент, когда продукт попадает в зону действия принтера или покидает ее).
Однако после печати ему требуется время зарядки в 1 микросекунду, прежде чем он сможет печатать снова.
Каково максимальное количество продуктов, на которых может печатать принтер, если продукт и время печати принтера выбраны оптимально?

Ввод

Вводные данные задаются из стандартного ввода в следующем формате:
N
T_1 D_1
T_2 D_2
\vdots
T_N D_N

Вывод

Распечатайте максимальное количество продуктов, на которых может печатать принтер.

Ограничения

- 1\leq N \leq 2\times 10^5
- 1\leq T_i,D_i \leq 10^{18}
- Все входные значения являются целыми числами.

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

5
1 1
1 1
2 1
1 2
1 4

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

4

Ниже мы просто назовем момент t микросекунд с текущего момента временем t.
Например, вы можете напечатать на четырех продуктах следующим образом:

- Время 1: Продукты 1,2,4,5 входят в диапазон принтера. Печать на продукте 4.
- Время 2: Продукт 3 входит в диапазон принтера, а продукты 1,2 покидают диапазон принтера. Печать на продукте 1.
- Время 3: Продукты 3,4 покидают диапазон принтера. Печать на продукте 3.
- Время 4.5: Печать на продукте 5.
- Время 5: Продукт 5 покидает диапазон принтера.

Невозможно напечатать на всех пяти продуктах, поэтому ответ 4.

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

2
1 1
10000000000000000000 10000000000000000000000

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

2

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

10
4 1
1 2
1 4
3 2
5 1
5 1
4 1
2 1
4 1
2 4

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

6

Существуют N продуктов, помеченных от 1 до N, на конвейерной ленте.
Ключевой принтер прикреплен к конвейерной ленте, и продукт i входит в диапазон принтера через T_i микросекунд с этого момента и покидает его через D_i микросекунд позже.
Ключевой принтер может мгновенно напечатать на одном продукте, находящемся в пределах диапазона принтера (в частности, печать возможна в момент, когда продукт входит или покидает диапазон принтера).
Однако после печати один раз требуется время зарядки 1 микросекунда, прежде чем он сможет снова печатать.
Какое максимальное количество продуктов, на которых принтер может печатать, когда продукт и время для печати принтера выбраны оптимально?

Вход

Ввод приведен из стандартного ввода в следующем формате:
N
T_1 D_1
T_2 D_2
\vdots
T_N D_N

Выход

Распечатайте максимальное количество продуктов, на которых может печатать принтер.

Ограничения

- 1\leq N \leq 2\times 10^5
- 1\leq T_i,D_i \leq 10^{18}
- Все входные значения являются целыми числами.

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

5
1 1
1 1
2 1
1 2
1 4

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

4

Ниже мы будем называть момент времени t, который наступает через t микросекунд с текущего момента.
Например, вы можете распечатать на четырех продуктах следующим образом:

- Время 1: Продукты 1, 2, 4, 5 входят в диапазон принтера. Печать на продукте 4.
- Время 2: Продукт 3 входит в диапазон принтера, а Продукты 1 и 2 покидают диапазон принтера. Печать на продукте 1.
- Время 3: Продукты 3 и 4 покидают диапазон принтера. Печать на продукте 3.
- Время 4.5: Печать на продукте 5.
- Время 5: Продукт 5 оставляет диапазон принтера.

Невозможно печатать на всех пять продуктов, поэтому ответ 4.

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

2
1 1
100000000000000000000 100000000000000000000

Образец вывода 2

2

Образец ввода 3

10
4 1
1 2
1 4
3 2
5 1
5 1
4 1
2 1
4 1
2 4

Выбор вывода 3

6


В некоторой стране есть N городов.
Вы отправитесь из офиса в городе 1 в пункт назначения в городе N через ноль или более городов.
Доступны два вида транспорта: служебный автомобиль и поезд. Время, необходимое для поездки из города i в город j, выглядит следующим образом:

- D_{i,j} \times A минут на служебном автомобиле, и
- D_{i,j} \times B + C минут на поезде.

Вы можете пересесть с автомобиля компании на поезд, но не наоборот.
Вы можете сделать это, не тратя времени, но только в городе.
За какое минимальное время в минутах можно добраться из города 1 в город N?

Ввод

Вводные данные передаются из стандартного ввода в следующем формате:
N A B C
D_{1,1} D_{1,2} \ldots D_{1,N}
D_{2,1} D_{2,2} \ldots D_{2,N}
\vdots
D_{N,1} D_{N,2} \ldots D_{N,N}

Вывод

Выведите ответ в виде целого числа.

Ограничения

- 2 \leq N \leq 1000
- 1 \leq A, B, C \leq 10^6
- D_{i,j} \leq 10^6
- D_{i,i} = 0
- D_{i,j} = D_{j,i} > 0 (i \neq j)
- Все вводные значения являются целыми числами.

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

4 8 5 13
0 6 2 15
6 0 3 5
2 3 0 13
15 5 13 0

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

78

Вы можете добраться из города 1 в город 4 за 78 минут, двигаясь следующим образом.

- Поездка на служебном автомобиле из города 1 в город 3. Это займёт 2 \times 8 = 16 минут.
- Поездка на служебном автомобиле из города 3 в город 2. Это займёт 3 \times 8 = 24 минуты.
- Поездка на поезде из города 2 в город 4. Это займёт 5 \times 5 + 13 = 38 минут.

Невозможно проехать из города 1 в город 4 менее чем за 78 минут.

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

3 1 1000000 1000000
0 10 1
10 0 10
1 10 0

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

1

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

5 954257 954213 814214
0 84251 214529 10017 373342
84251 0 91926 32336 164457
214529 91926 0 108914 57762
10017 32336 108914 0 234705
373342 164457 57762 234705 0

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

168604826785

В определенной стране есть N городов.
Вы отправитесь из своего офиса в городе 1 в пункт назначения в городе N через ноль или более городов.
Доступны два вида транспорта: служебный автомобиль и поезд. Время, необходимое для поездки из города i в город j, следующее:

- D_{i,j} \times A минут на служебном автомобиле и
- D_{i,j} \times B + C минут на поезде.

Вы можете пересесть из служебного автомобиля на поезд, но не наоборот.
Вы можете сделать это, не тратя время, но только в городе.
Какое минимальное время в минутах, чтобы добраться из города 1 в город N?

Ввод

Вводные данные даются из стандартного ввода в следующем формате:
N A B C
D_{1,1} D_{1,2} \ldots D_{1,N}
D_{2,1} D_{2,2} \ldots D_{2,N}
\vdots
D_{N,1} D_{N,2} \ldots D_{N,N}

Вывод

Выведите ответ как целое число.

Ограничения

- 2 \leq N \leq 1000
- 1 \leq A, B, C \leq 10^6
- D_{i,j} \leq 10^6
- D_{i,i} = 0
- D_{i,j} = D_{j,i} > 0 (i \neq j)
- Все входные значения являются целыми числами.

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

4 8 5 13
0 6 2 15
6 0 3 5
2 3 0 13
15 5 13 0

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

78

Вы можете добраться из города 1 в город 4 всего за 78 минут, двигаясь следующим образом.

- Поездка на служебной машине из города 1 в город 3. Это займет 2 \times 8 = 16 минут.
- Поездка на служебной машине из города 3 в город 2. Это займет 3 \times 8 = 24 минуты.
- Поездка на поезде из города 2 в город 4. Это займет 5 \times 5 + 13 = 38 минут.

Невозможно добраться из города 1 в город 4 менее чем за 78 минут.

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

3 1 1000000 1000000
0 10 1
10 0 10
1 10 0

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

1

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

5 954257 954213 814214
0 84251 214529 10017 373342
84251 0 91926 32336 164457
214529 91926 0 108914 57762
10017 32336 108914 0 234705
373342 164457 57762 234705 0

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

168604826785

В некоторой стране есть N городов.
Вы будете путешествовать из вашего офиса в городе 1 до пункта назначения в городе N, через ноль или более городов.
Доступно два вида транспорта: служебная машина и поезд. Время, необходимое для путешествия из города i в город j, рассчитывается следующим образом:

- D_{i,j} \times A минут на служебной машине, и
- D_{i,j} \times B + C минут на поезде.

Вы можете пересесть с машины на поезд, но не наоборот.
Вы можете сделать это без траты времени, но только в городе.
Какое минимальное время в минутах требуется, чтобы добраться из города 1 в город N?

Ввод

Ввод поступает из стандартного ввода в следующем формате:
N A B C
D_{1,1} D_{1,2} \ldots D_{1,N}
D_{2,1} D_{2,2} \ldots D_{2,N}
\vdots
D_{N,1} D_{N,2} \ldots D_{N,N}

Вывод

Выведите ответ в виде целого числа.

Ограничения

- 2 \leq N \leq 1000
- 1 \leq A, B, C \leq 10^6
- D_{i,j} \leq 10^6
- D_{i,i} = 0
- D_{i,j} = D_{j,i} > 0 (i \neq j)
- Все входные значения являются целыми числами.

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

4 8 5 13
0 6 2 15
6 0 3 5
2 3 0 13
15 5 13 0

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

78

Вы можете путешествовать из города 1 в город 4 за 78 минут, двигаясь следующим образом.

- Путешествуйте на служебной машине из города 1 в город 3. Это займет 2 \times 8 = 16 минут.
- Путешествуйте на служебной машине из города 3 в город 2. Это займет 3 \times 8 = 24 минуты.
- Путешествуйте поездом из города 2 в город 4. Это займет 5 \times 5 + 13 = 38 минут.

Невозможно добраться из города 1 в город 4 быстрее, чем за 78 минут.

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

3 1 1000000 1000000
0 10 1
10 0 10
1 10 0

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

1

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

5 954257 954213 814214
0 84251 214529 10017 373342
84251 0 91926 32336 164457
214529 91926 0 108914 57762
10017 32336 108914 0 234705
373342 164457 57762 234705 0

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

168604826785


Как менеджер фабрики Keyence, вы хотите контролировать несколько секций на конвейерной ленте. Всего есть N секций, которые вы хотите контролировать, и длина i-й секции составляет D_i метров.

У вас есть два типа датчиков на выбор, и ниже приведена информация о каждом из них.

- Датчик типа-j (1\leq j \leq 2): Может контролировать секцию длиной L_j метров. Цена - C_j за датчик, и вы можете использовать не более K_j датчиков этого типа в общей сложности.

Вы можете разделять одну секцию на несколько для контроля. Допустимо, если секции, контролируемые датчиками, перекрываются или если они контролируют длину больше, чем нужно. Например, при L_1=4 и L_2=2, вы можете использовать один датчик типа-1 для контроля секции длиной 3 метра или использовать один датчик типа-1 и один типа-2 для контроля секции длиной 5 метров. Определите, возможно ли контролировать все N секций, и если да, найдите минимальную общую стоимость необходимых датчиков.

Ввод

Ввод поступает из стандартного ввода в следующем формате:
N
D_1 D_2 \dots D_N
L_1 C_1 K_1
L_2 C_2 K_2

Вывод

Если невозможно контролировать все N секций, выведите -1. В противном случае выведите минимальную общую стоимость необходимых датчиков.

Ограничения

- 1\leq N \leq 100
- 1\leq D_i,L_j \leq 10^5
- 1\leq C_j \leq 10^9
- 1\leq K_j \leq 10^3
- Все входные значения - целые числа.

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

3
3 5 10
4 3 3
2 2 6

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

17

Вы можете контролировать все секции, используя три датчика типа-1 и четыре датчика типа-2 следующим образом.

- Используйте один датчик типа-1 для контроля первой секции.
- Используйте один датчик типа-1 и один датчик типа-2 для контроля второй секции.
- Используйте один датчик типа-1 и три датчика типа-2 для контроля третьей секции.

В этом случае общая стоимость необходимых датчиков составляет 3\times 3 + 2\times 4 = 17, что является минимумом.

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

3
3 5 10
4 3 3
2 2 3

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

-1

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

2
4 8
3 1 100
4 10000 100

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

5

Допустимо, если один тип датчиков вообще не используется.

Как управляющий фабрикой Keyence, вы хотите контролировать несколько секций на конвейерной ленте. Всего есть N секций, которые вы хотите контролировать, а длина i-й секции составляет D_i метров.

На выбор предлагается два типа датчиков, ниже приведена информация о каждом датчике.

- Датчик типа j (1\leq j \leq 2): может контролировать секцию длиной L_j метров.

Цена составляет C_j за датчик, и вы можете использовать не более K_j датчиков этого типа в общей сложности.

Вы можете разделить одну секцию на несколько секций для мониторинга.
Это нормально, если секции, контролируемые датчиками, перекрываются или если они контролируют больше, чем длина секции, которую вы хотите контролировать.
Например, когда L_1=4 и L_2=2, вы можете использовать один датчик типа 1 для контроля секции длиной 3 метра или использовать один датчик типа 1 и один датчик типа 2 для контроля секции длиной 5 метров.
Определите, возможно ли контролировать все N секций, и если возможно, найдите минимальную общую стоимость необходимых датчиков.

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

Входные данные задаются из стандартного ввода в следующем формате:
N
D_1 D_2 \dots D_N
L_1 C_1 K_1
L_2 C_2 K_2

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

Если невозможно контролировать все N секций, выведите -1. В противном случае выведите минимальную общую стоимость необходимых датчиков.

Ограничения

- 1\leq N \leq 100
- 1\leq D_i,L_j \leq 10^5
- 1\leq C_j \leq 10^9
- 1\leq K_j \leq 10^3
- Все входные значения являются целыми числами.

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

3
3 5 10
4 3 3
2 2 6

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

17

Вы можете контролировать все разделы, используя три датчика типа 1 и четыре датчика типа 2 следующим образом.

- Используйте один датчик типа 1 для контроля первого раздела.
- Используйте один датчик типа 1 и один датчик типа 2 для контроля второго раздела.
- Используйте один датчик типа 1 и три датчика типа 2 для контроля третьего раздела.

В этом случае общая стоимость необходимых датчиков составляет 3\time 3 + 2\time 4 = 17, что является минимумом.

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

3
3 5 10
4 3 3
2 2 3

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

-1

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

2
4 8
3 1 100
4 10000 100

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

5

Это нормально, если один тип датчика вообще не используется.

Как управляющий на фабрике Keyence, вы хотите контролировать несколько секций конвейера. Всего есть N секций, которые нужно контролировать, и длина i-й секции составляет D_i метров.

Предлагаются два типа датчиков, информация о которых представлена ниже:

- Датчик типа j (1\leq j \leq 2): может контролировать секцию длиной L_j метров.
Цена одного датчика типа j — C_j, и вы можете использовать не более K_j датчиков этого типа.

Секцию можно разделить на несколько частей для мониторинга.
Можно, чтобы секции, контролируемые датчиками, перекрывались или чтобы они контролировали большую длину, чем нужно для секции.
Например, когда L_1 = 4 и L_2 = 2, можно использовать один датчик типа 1 для контроля секции длиной 3 метра, или использовать один датчик типа 1 и один датчик типа 2 для контроля секции длиной 5 метров.

Определите, можно ли контролировать все N секций, и если это возможно, найдите минимальную общую стоимость необходимых датчиков.

Входные

Входные данные предоставляются из стандартного ввода в следующем формате:
N
D_1 D_2 \dots D_N
L_1 C_1 K_1
L_2 C_2 K_2

Выходные

Если невозможно контролировать все N секций, выведите -1. В противном случае выведите минимальную общую стоимость необходимых датчиков.

Ограничения:

- 1\leq N \leq 100
- 1\leq D_i,L_j \leq 10^5
- 1\leq C_j \leq 10^9
- 1\leq K_j \leq 10^3
- Все входные значения являются целыми числами.

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

3
3 5 10
4 3 3
2 2 6

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

17

Вы можете контролировать все секции, используя три датчика типа 1 и четыре датчика типа 2 следующим образом:

- Используйте один датчик типа 1 для контроля первой секции.
- Используйте один датчик типа 1 и один датчик типа 2 для контроля второй секции.
- Используйте один датчик типа 1 и три датчика типа 2 для контроля третьей секции.

В этом случае общая стоимость необходимых датчиков составляет 3\times 3 + 2\times 4 = 17, что является минимальной.

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

3
3 5 10
4 3 3
2 2 3

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

-1

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

2
4 8
3 1 100
4 10000 100

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

5

Не важно, если один тип датчика вообще не используется.


Такахаши находится в здании, в котором 100 этажей.
Он использует лестницу для перемещения на два этажа или меньше или для перемещения на три этажа или меньше, а в противном случае использует лифт.
Использует ли он лестницу для перемещения с этажа X на этаж Y?

Ввод

Ввод дается из стандартного ввода в следующем формате:
X Y

Вывод

Если Такахаши использует лестницу для перемещения, выведите Yes; если он использует лифт, выведите No.

Ограничения

- 1 \leq X,Y \leq 100
- X \neq Y
- Все входные значения являются целыми числами.

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

1 4

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

No

Перемещение с этажа 1 на этаж 4 подразумевает подъем на три этажа, поэтому Такахаши использует лифт.

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

99 96

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

Yes

Для перемещения с этажа 99 на этаж 96 необходимо спуститься на три этажа, поэтому Такахаши использует лестницу.

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

100 1

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

No

Такахаши находится в здании в 100 этажей.
Он использует лестницу для подъема на два этажа или меньше или вниз на три этажа или меньше, а в остальных случаях пользуется лифтом.
Использует ли он лестницу, чтобы перейти с этажа X на этаж Y?

Ввод

Вводные данные передаются из стандартного ввода в следующем формате:
X Y

Вывод

Если Такахаши использует для перемещения лестницу, выведите Yes; если он пользуется лифтом, выведите No.

Ограничения

- 1 \leq X,Y \leq 100
- X \neq Y
- Все входные значения являются целыми числами.

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

1 4

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

No

Переход с 1 этажа на 4 предполагает подъём на три этажа, поэтому Такахаши пользуется лифтом.

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

99 96

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

Yes

Для перехода с 99 на 96 этаж нужно спуститься на три этажа, поэтому Такахаши пользуется лестницей.

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

100 1

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

No

Такахаси находится в здании с 100 этажами.
Он использует лестницу, чтобы подняться на два этажа или меньше или спуститься на три этажа или меньше, и использует лифт в остальных случаях.
Использует ли он лестницу, чтобы переместиться с этажа X на этаж Y?

Ввод

Ввод поступает из стандартного ввода в следующем формате:
X Y

Вывод

Если Такахаси использует лестницу для перемещения, выведите Yes; если он использует лифт, выведите No.

Ограничения

- 1 \leq X,Y \leq 100
- X \neq Y
- Все входные значения — целые числа.

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

1 4

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

No

Перемещение с этажа 1 на этаж 4 включает подъем на три этажа, поэтому Такахаси пользуется лифтом.

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

99 96

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

Yes

Перемещение с этажа 99 на этаж 96 включает спуск на три этажа, поэтому Такахаси пользуется лестницей.

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

100 1

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

No


Число, похожее на 326, — это положительное трехзначное целое число, в котором произведение цифр сотен и десятков равно цифре единиц.
Например, 326, 400, 144 — это числа, похожие на 326, в то время как 623, 777, 429 — нет.
Дано целое число N, найдите наименьшее число, похожее на 326, которое больше или равно N. Оно всегда существует при данных ограничениях.

Ввод

Ввод предоставляется через стандартный ввод в следующем формате:
N

Вывод

Выведите ответ.

Ограничения

- 100 \leq N \leq 919
- N — целое число.

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

320

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

326

320,321,322,323,324,325 не являются числами, похожими на 326, в то время как 326 является.

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

144

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

144

144 является числом, похожим на 326.

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

516

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

600

Число, подобное 326, представляет собой трехзначное положительное целое число, где произведение цифр сотен и десятков равно цифре единицы.
Например, 326 400 144 — это числа, похожие на 326, а 623 777 429 — нет.
Получив целое число N, найдите наименьшее число, подобное 326, больше или равно N. Он всегда существует в условиях ограничений.

Ввод

Входные данные подаются из Стандартного ввода в следующем формате:
N

Выпуск

Распечатайте ответ.

Ограничения целостности

- 100 \leq N \leq 919
- N — целое число.

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

320

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

326

320,321,322,323,324,325 не являются числами, подобными 326, в то время как 326 является числом, подобным 326.

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

144

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

144

144 — это число, подобное 326.

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

516

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

600

326-подобное число-это трехзначное положительное целое число, где произведение сотен и десятков цифр равняется единицам.
Например, 326 400 144 являются 326-подобными числами, а 623 777 429-нет.
Учитывая целое число n, найдите наименьшее 326-подобное число, больше или равное N. Оно всегда существует при данных ограничениях.

Ввод

Ввод приведен из стандартного ввода в следующем формате:
N

Ввод

Распечатать ответ.

Ограничения

- 100 \leq N \leq 919
-N — целое число.

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

320

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

326

320,321,322,323,324,325 не являются 326-подобными числами, а 326-это 326-подобное число.

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

144

Образец вывода 2

144

144-326-подобное число.

Образец ввода 3

516

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

600


Такахаси расположил N подарков на числовой прямой. i-й подарок находится на координате A_i. Вы выберете полуоткрытый интервал [x,x+M) длиной M на числовой прямой и получите все подарки, которые в него входят.
Более конкретно, вы получите подарки следующим образом.

- Сначала выберите одно действительное число x.
- Затем получите все подарки, координаты которых удовлетворяют x \le A_i < x+M.

Какое максимальное количество подарков вы можете получить?

Ввод

Ввод поступает из стандартного ввода в следующем формате:
N M
A_1 A_2 \dots A_N

Вывод

Выведите ответ в виде целого числа.

Ограничения

- Все входные значения являются целыми числами.
- 1 \le N \le 3 \times 10^5
- 1 \le M \le 10^9
- 0 \le A_i \le 10^9

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

8 6
2 3 5 7 11 13 17 19

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

4

Например, выберите полуоткрытый интервал [1.5,7.5).
В этом случае вы можете получить четыре подарка на координатах 2,3,5,7, что является максимальным количеством, которое можно получить.

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

10 1
3 1 4 1 5 9 2 6 5 3

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

2

На одной координате может находиться несколько подарков.

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

10 998244353
100000007 0 1755647 998244353 495 1000000000 1755648 503 1755649 998244853

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

7

Такахаши разместил N подарков на числовой прямой. i-й подарок помещен в координату A_i.
Вы выберете полуоткрытый интервал [x,x+M) длины M на числовой прямой и получите все подарки, включенные в него.
А именно, вы получите подарки в соответствии со следующей процедурой.

- Сначала выберите одно действительное число x.
- Затем получите все подарки, координаты которых удовлетворяют x \le A_i < x+M.

Какое максимальное количество подарков вы можете получить?

Ввод

Ввод дается из стандартного ввода в следующем формате:
N M
A_1 A_2 \dots A_N

Вывод

Выведите ответ в виде целого числа.

Ограничения

- Все входные значения являются целыми числами.
- 1 \le N \le 3 \times 10^5
- 1 \le M \le 10^9
- 0 \le A_i \le 10^9

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

8 6
2 3 5 7 11 13 17 19

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

4

Например, укажите полуоткрытый интервал [1,5,7,5).
В этом случае вы можете получить четыре подарка в координатах 2,3,5,7, максимальное количество подарков, которое может быть получено.

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

10 1
3 1 4 1 5 9 2 6 5 3

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

2

В одной и той же координате может быть несколько подарков.

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

10 998244353
100000007 0 1755647 998244353 495 1000000000 1755648 503 1755649 998244853

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

7


Дано целое число N и строки R и C длины N, состоящие из символов A, B и C. Решите следующую задачу.
Есть решетка размером N \times N. Все ячейки изначально пусты.
Вы можете записать не более одного символа из A, B и C в каждую ячейку (также можно оставить ячейку пустой).
Определите, возможно ли удовлетворить все следующие условия, и если возможно, выведите один из способов это сделать.

- Каждая строка и каждый столбец содержат ровно одну A, одну B и одну C.
- Самый левый символ, написанный в i-й строке, совпадает с i-м символом строки R.
- Самый верхний символ, написанный в i-м столбце, совпадает с i-м символом строки C.

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

Входные данные вводятся с стандартного ввода в следующем формате:
N
R
C

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

Если невозможно заполнить решетку согласно условиям задачи, выведите No в одной строке.
В противном случае выведите один из способов заполнить решетку в следующем формате:
Yes
A_1
A_2
\vdots
A_N

Первая строка должна содержать Yes.
i-я из последующих N строк должна содержать строку A_i длины N.

- Если j-й символ строки A_i равен ., это означает, что ячейка в i-й строке сверху и j-м столбце слева пуста.
- Если j-й символ строки A_i равен A, это означает, что A написана в ячейке в i-й строке сверху и j-м столбце слева.
- Если j-й символ строки A_i равен B, это означает, что B написана в ячейке в i-й строке сверху и j-м столбце слева.
- Если j-й символ строки A_i равен C, это означает, что C написана в ячейке в i-й строке сверху и j-м столбце слева.

Если существует несколько правильных способов заполнить решетку, вы можете вывести любой из них.

Ограничения

- N — целое число от 3 до 5, включительно.
- R и C — строки длины N, состоящие из A, B и C.

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

5
ABCBC
ACAAB

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

Yes
AC..B
.BA.C
C.BA.
BA.C.
..CBA

Решетка в примере выхода удовлетворяет всем следующим условиям, поэтому она будет считаться правильной.

- Каждая строка содержит ровно одну A, одну B и одну C.
- Каждый столбец содержит ровно одну A, одну B и одну C.
- Самые левые символы, написанные в строках, это A, B, C, B, C сверху вниз.
- Самые верхние символы, написанные в столбцах, это A, C, A, A, B слева направо.

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

3
AAA
BBB

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

No

Для этих входных данных невозможно заполнить решетку согласно условиям.

Вам дано целое число N и строки R и C длины N, состоящие из A, B и C. Решите следующую задачу.
Имеется сетка N \times N. Все ячейки изначально пусты.
Вы можете записать не более одного символа из A, B и C в каждую ячейку. (Вы также можете оставить ячейку пустой.)
Определите, возможно ли выполнить все следующие условия, и если это возможно, выведите один из способов сделать это.

- Каждая строка и каждый столбец содержат ровно один A, один B и один C.
- Самый левый символ, записанный в i-й строке, соответствует i-му символу R.
- Самый верхний символ, записанный в i-м столбце, соответствует i-му символу C.

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

Входные данные даются из стандартного ввода в следующем формате:
N
R
C

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

Если нет способа заполнить сетку, чтобы удовлетворить условиям в условии задачи, выведите No в одной строке.
В противном случае выведите один из таких способов заполнения сетки в следующем формате:
Yes
A_1
A_2
\vdots
A_N

Первая строка должна содержать Да.
I-я из последующих N строк должна содержать строку A_i длины N.

- Если j-й символ A_i — ., это означает, что ячейка в i-й строке сверху и j-м столбце слева пуста.
- Если j-й символ A_i — A, это означает, что A записано в ячейке в i-й строке сверху и j-м столбце слева.
- Если j-й символ A_i — B, это означает, что B записано в ячейке в i-й строке сверху и j-м столбце слева.
- Если j-й символ A_i — C, это означает, что C записано в ячейке в i-й строке сверху и j-м столбце слева.

Если существует несколько правильных способов заполнения сетки, вы можете вывести любой из них.

Ограничения

- N — целое число от 3 до 5 включительно.
- R и C — строки длины N, состоящие из A, B и C.

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

5
ABCBC
ACAAB

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

Yes
AC..B
.BA.C
C.BA.
BA.C.
..CBA

Сетка в примере вывода удовлетворяет всем следующим условиям, поэтому она будет считаться правильной.

- Каждая строка содержит ровно один A, один B и один C.
- Каждый столбец содержит ровно один A, один B и один C.
- Самые левые символы, записанные в строках, — это A, B, C, B, C сверху вниз.
- Самые верхние символы, записанные в столбцах, — это A, C, A, A, B слева направо.

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

3
AAA
BBB

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

No

Для этого ввода нет способа заполнить сетку, чтобы удовлетворить условиям.


Аоки, сотрудник AtCoder Inc., получает зарплату за этот месяц, определяемую целым числом N и последовательностью A длины N следующим образом.
Сначала ему дают N-гранный кубик, на котором с равной вероятностью выпадают числа от 1 до N, и переменную x=0.
Затем следующие шаги повторяются до завершения.

- Бросить кубик и пусть y будет результатом.
- Если x<y, выплатите ему A_y йен и пусть x=y.
- В противном случае завершите процесс.

Зарплата Аоки за этот месяц — это общая сумма, выплаченная в этом процессе.
Найдите ожидаемое значение зарплаты Аоки в этом месяце, по модулю 998244353.
Как найти ожидаемое значение по модулю 998244353

Можно доказать, что искомое ожидаемое значение в этой задаче всегда является рациональным числом. Также ограничения задачи гарантируют, что если искомое ожидаемое значение выражено в виде несократимой дроби \frac yx, то x не делится на 998244353.

Здесь существует ровно одно 0\leq z\lt998244353 такое, что y\equiv xz\pmod{998244353}. Выведите это z.

Ввод

Ввод дается со стандартного ввода в следующем формате:
N
A_1 A_2 \dots A_N

Вывод

Выведите ответ.

Ограничения

- Все входные данные — целые числа.
- 1 \le N \le 3 \times 10^5
- 0 \le A_i < 998244353

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

3
3 2 6

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

776412280

Вот пример, как проходит процесс.

- Изначально x=0.
- Бросить кубик, и выпадает 1. Так как 0<1, выплачиваем ему A_1 = 3 йены и пусть x=1.
- Бросить кубик, и выпадает 3. Так как 1<3, выплачиваем ему A_3 = 6 йен и пусть x=3.
- Бросить кубик, и выпадает 1. Так как 3 \ge 1, процесс завершен.

В этом случае его зарплата за месяц составляет 9 йен.
Можно вычислить, что ожидаемое значение его зарплаты в этом месяце равно \frac{49}{9} йен, а его представление по модулю 998244353 равно 776412280.

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

1
998244352

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

998244352

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

9
3 14 159 2653 58979 323846 2643383 27950288 419716939

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

545252774

Сотрудник AtCoder Inc. Аоки получает зарплату за этот месяц, определяемую целым числом N и последовательностью A длиной N следующим образом.
Сначала ему дают N-гранный кубик, на котором с равной вероятностью выпадают числа от 1 до N, и переменную x=0.
Затем следующие шаги повторяются до завершения.

- Бросить кубик, пусть y будет результатом.
- Если x<y, выплатить ему A_y йен, пусть x=y.
- В противном случае завершить процесс.

Зарплата Аоки за этот месяц — общая выплаченная сумма.
Найди ожидаемое значение зарплаты Аоки в этом месяце по модулю 998244353.
Как найти ожидаемое значение по модулю 998244353

Можно доказать, что искомое ожидаемое значение в этой задаче всегда является рациональным числом. Также ограничения задачи гарантируют, что если искомое ожидаемое значение выражено в виде несократимой дроби \frac yx, то x не делится на 998244353.

Здесь существует ровно один 0\leq z\lt998244353, где y\equiv xz\pmod{998244353}. Выведи это z.

Ввод

Ввод осуществляется посредством стандартного ввода в следующем формате:
N
A_1 A_2 \dots A_N

Вывод

Выведи ответ.

Ограничения

- Все входные данные — целые числа.
- 1 \le N \le 3 \times 10^5
- 0 \le A_i < 998244353

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

3
3 2 6

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

776412280

Вот пример того, как проходит процесс.

- Изначально x=0.
- Бросить кубик, выпадает 1. Поскольку 0<1, выплачиваем ему A_1 = 3 йены, пусть x=1.
- Бросить кубик, выпадает 3. Поскольку 1<3, выплачиваем ему A_3 = 6 йен, пусть x=3.
- Бросить кубик, выпадает 1. Поскольку 3 \ge 1, процесс завершен.

В этом случае его зарплата за месяц составляет 9 йен.
Можно вычислить, что ожидаемое значение его зарплаты в этом месяце равно \frac{49}{9} йен, а представление по модулю 998244353 равно 776412280.

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

1
998244352

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

998244352

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

9
3 14 159 2653 58979 323846 2643383 27950288 419716939

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

545252774

Аоки, сотрудник AtCoder Inc., получает зарплату за этот месяц, определяемую целым числом N и последовательностью A длины N следующим образом.

Сначала ему дается N-гранная кость (игральная кость), на которой с равной вероятностью выпадают целые числа от 1 до N, и переменная x=0.
Затем следующие шаги повторяются до тех пор, пока не будут завершены.

- Бросьте кость один раз, и пусть y будет результатом.
- Если x<y, заплатите ему A_y иен, и пусть x=y.
- В противном случае завершите процесс.

Зарплата Аоки за этот месяц — это общая сумма, выплаченная в ходе этого процесса.

Найдите ожидаемое значение зарплаты Аоки за этот месяц по модулю 998244353.
Как найти ожидаемое значение по модулю 998244353

Можно доказать, что искомое ожидаемое значение в этой задаче всегда является рациональным числом. Также ограничения этой задачи гарантируют, что если искомое ожидаемое значение выражено в виде сокращенной дроби \frac yx, то x не делится на 998244353.

Здесь существует ровно один 0\leq z\lt998244353 такой, что y\equiv xz\pmod{998244353}. Распечатайте это z.

Ввод

Ввод дается из стандартного ввода в следующем формате:
N
A_1 A_2 \dots A_N

Вывод

Распечатайте ответ.

Ограничения

- Все входные данные являются целыми числами.
- 1 \le N \le 3 \times 10^5
- 0 \le A_i < 998244353

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

3
3 2 6

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

776412280

Вот пример того, как идет процесс.

- Изначально x=0.
- Бросьте кубик один раз, и он покажет 1. Поскольку 0<1, заплатите ему A_1 = 3 иены и пусть x=1.
- Бросьте кубик один раз, и он покажет 3. Поскольку 1<3, заплатите ему A_3 = 6 иен и пусть x=3.
- Бросьте кубик один раз, и он покажет 1. Поскольку 3 \ge 1, завершите процесс.

В этом случае его зарплата за этот месяц составит 9 иен.
Можно рассчитать, что ожидаемое значение его зарплаты в этом месяце составляет \frac{49}{9} иен, представление которого по модулю 998244353 равно 776412280.

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

1
998244352

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

998244352

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

9
3 14 159 2653 58979 323846 2643383 27950288 419716939

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

545252774


Вам дана строка S длиной N, состоящая из строчных английских букв.
Если в S есть смежные вхождения a и b, выведите Yes; в противном случае выведите No. (Порядок a и b не имеет значения.)

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

Входные данные даются из стандартного ввода в следующем формате:
N
S

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

Если в S есть смежные вхождения a и b, выведите Yes; в противном случае выведите No.

Ограничения

- 2 \leq N \leq 100
- S — это строка длиной N, состоящая из строчных английских букв.

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

3
abc

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

Yes

Строка abc имеет a в качестве первого символа и b в качестве второго символа, которые являются смежными. Таким образом, выведите Yes.

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

2
ba

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

Yes

Строка ba имеет a в качестве второго символа и b в качестве первого символа, которые являются смежными. (Обратите внимание, что порядок a и b не имеет значения.)

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

7
atcoder

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

No

Вам дана строка S длины N, состоящая из строчных английских букв.
Если в S есть какие-либо смежные вхождения a и b, выведите Yes; в противном случае выведите No. (Порядок a и b не имеет значения.)

Ввод

Ввод дается через стандартный ввод в следующем формате:
N
S

Вывод

Если в S есть какие-либо смежные вхождения a и b, выведите Yes; в противном случае выведите No.

Ограничения

- 2 \leq N \leq 100
- S - строка длины N, состоящая из строчных английских букв.

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

3
abc

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

Yes

Строка abc имеет a как первый символ и b как второй символ, которые являются смежными. Таким образом, выведите Yes.

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

2
ba

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

Yes

Строка ba имеет a как второй символ и b как первый символ, которые являются смежными. (Обратите внимание, что порядок a и b не имеет значения.)

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

7
atcoder

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

No

Вам дана строка S длины N, состоящая из строчных английских букв.
Если в S есть какие-либо смежные вхождения a и b, выведите Yes; в противном случае выведите No. (Порядок a и b не имеет значения.)

Ввод

Ввод дается через стандартный ввод в следующем формате:
N
S

Вывод

Если в S есть какие-либо смежные вхождения a и b, выведите Yes; в противном случае выведите No.

Ограничения

- 2 \leq N \leq 100
- S — строка длины N, состоящая из строчных английских букв.

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

3
abc

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

Yes

Строка abc имеет a как первый символ и b как второй символ, которые являются смежными. Таким образом, выведите Yes.

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

2
ba

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

Yes

Строка ba имеет a как второй символ и b как первый символ, которые являются смежными. (Обратите внимание, что порядок a и b не имеет значения.)

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

7
atcoder

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

No


Вам дано целое число B.
Если существует положительное целое число A, такое что A^A = B, выведите его значение; в противном случае выведите -1.

Ввод

Ввод дается из стандартного ввода в следующем формате:
B

Вывод

Если существует положительное целое число A, такое что A^A = B, выведите его значение; в противном случае выведите -1.
Если существует несколько положительных целых чисел A, таких что A^A = B, любое из них будет принято.

Ограничения

- 1 \leq B \leq 10^{18}
- B — целое число.

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

27

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

3

3^3 = 27, поэтому выведите 3.

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

100

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

-1

Не существует A, такого что A^A = B.

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

10000000000

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

10

Дано целое число B.
Если существует положительное целое число A, такое что A^A = B, выведите его значение; в противном случае выведите -1.

Ввод

Ввод поступает из стандартного ввода в следующем формате:
B

Вывод

Если существует положительное целое число A, такое что A^A = B, выведите его значение; в противном случае выведите -1.
Если существует несколько положительных целых чисел A, таких что A^A = B, любое из них будет принято.

Ограничения

- 1 \leq B \leq 10^{18}
- B — целое число.

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

27

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

3

3^3 = 27, поэтому выведите 3.

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

100

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

-1

Не существует A, такого что A^A = B.

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

10000000000

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

10

Вам дано целое число B.
Если существует целое положительное число A такое, что A^A = B, выведите его значение; в противном случае выведите -1.

Ввод

Вводные данные передаются из стандартного ввода в следующем формате:
B

Вывод

Если существует целое положительное число A такое, что A^A = B, выведите его значение; в противном случае выведите -1.
Если существует несколько положительных целых чисел A таких, что A^A = B, любое из них будет принято.

Ограничения

- 1 \leq B \leq 10^{18}
- B это целое число.

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

27

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

3

3^3 = 27, поэтому выведите 3.

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

100

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

-1

Не существует А такого, что А^А = В.

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

10000000000

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

10


Есть сетка A размером 9\times 9, где каждая ячейка содержит целое число от 1 до 9 включительно.
В частности, ячейка в i-й строке сверху и j-м столбце слева содержит A_{i,j}.
Если A удовлетворяет всем следующим условиям, выведите Yes. В противном случае выведите No.

- Для каждой строки A девять ячеек в этой строке содержат каждое целое число от 1 до 9 ровно один раз.
- Для каждого столбца A девять ячеек в этом столбце содержат каждое целое число от 1 до 9 ровно один раз.
- Разделите строки A на три группы, каждая из трех строк, сверху вниз, и аналогично разделите столбцы на три группы, каждая из трех столбцов, слева направо.
Каждая сетка размером 3\times 3, полученная из A таким образом, содержит каждое целое число от 1 до 9 ровно один раз.

Ввод

Вводные данные задаются из стандартного ввода в следующем формате:
A_{1,1} A_{1,2} \ldots A_{1,9}
A_{2,1} A_{2,2} \ldots A_{2,9}
\vdots
A_{9,1} A_{9,2} \ldots A_{9,9}

Вывод

Если сетка A удовлетворяет всем условиям в условии задачи, вывести Да; в противном случае вывести Нет.

Ограничения

- 1\leq A_{i,j}\leq 9
- Все входные значения являются целыми числами.

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

1 2 3 4 5 6 7 8 9
4 5 6 7 8 9 1 2 3
7 8 9 1 2 3 4 5 6
2 3 4 5 6 7 8 9 1
5 6 7 8 9 1 2 3 4
8 9 1 2 3 4 5 6 7
3 4 5 6 7 8 9 1 2
6 7 8 9 1 2 3 4 5
9 1 2 3 4 5 6 7 8

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

Yes

Сетка A показана ниже.

Сетка A удовлетворяет всем трем условиям, поэтому печатаем Yes.

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

1 2 3 4 5 6 7 8 9
2 3 4 5 6 7 8 9 1
3 4 5 6 7 8 9 1 2
4 5 6 7 8 9 1 2 3
5 6 7 8 9 1 2 3 4
6 7 8 9 1 2 3 4 5
7 8 9 1 2 3 4 5 6
8 9 1 2 3 4 5 6 7
9 1 2 3 4 5 6 7 8

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

No

Сетка A показана ниже.

Например, если вы посмотрите на верхнюю левую сетку 3\times 3, вы увидите, что третье условие не выполняется, поэтому выведите No.

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

1 2 3 4 5 6 7 8 9
4 5 6 7 8 9 1 2 3
7 8 9 1 2 3 4 5 6
1 2 3 4 5 6 7 8 9
4 5 6 7 8 9 1 2 3
7 8 9 1 2 3 4 5 6
1 2 3 4 5 6 7 8 9
4 5 6 7 8 9 1 2 3
7 8 9 1 2 3 4 5 6

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

No

Сетка A показана ниже.

Например, если вы посмотрите на крайний левый столбец, то увидите, что второе условие не выполняется, поэтому выведите No.

Существует 9\times 9 grid A, где каждая ячейка содержит целое число от 1 до 9 включительно.
В частности, ячейка в i-й строке сверху и j-м столбце слева содержит A_{i,j}.
Если A удовлетворяет всем следующим условиям, выведите Yes. В противном случае выведите No.

- В каждой строке A девять ячеек этой строки содержат каждое целое число от 1 до 9 ровно один раз.
- В каждом столбце A девять ячеек этого столбца содержат каждое целое число от 1 до 9 ровно один раз.
- Разделите строки А на три группы, каждая из трех строк, сверху вниз, и аналогично разделите столбцы на три группы, каждая из трех столбцов, слева направо.
Каждая 3\times 3 grid, полученная таким образом из A, содержит каждое целое число от 1 до 9 ровно один раз.

Ввод

Вводные данные передаются из стандартного ввода в следующем формате:
A_{1,1} A_{1,2} \ldots A_{1,9}
A_{2,1} A_{2,2} \ldots A_{2,9}
\vdots
A_{9,1} A_{9,2} \ldots A_{9,9}

Вывод

Если сетка A удовлетворяет всем условиям постановки задачи, выведите Yes; в противном случае выведите No.

Ограничения

- 1\leq A_{i,j}\leq 9
- Все входные значения являются целыми числами.

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

1 2 3 4 5 6 7 8 9
4 5 6 7 8 9 1 2 3
7 8 9 1 2 3 4 5 6
2 3 4 5 6 7 8 9 1
5 6 7 8 9 1 2 3 4
8 9 1 2 3 4 5 6 7
3 4 5 6 7 8 9 1 2
6 7 8 9 1 2 3 4 5
9 1 2 3 4 5 6 7 8

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

Yes

Сетка А показана ниже.

Сетка A удовлетворяет всем трём условиям, поэтому выведите Yes.

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

1 2 3 4 5 6 7 8 9
2 3 4 5 6 7 8 9 1
3 4 5 6 7 8 9 1 2
4 5 6 7 8 9 1 2 3
5 6 7 8 9 1 2 3 4
6 7 8 9 1 2 3 4 5
7 8 9 1 2 3 4 5 6
8 9 1 2 3 4 5 6 7
9 1 2 3 4 5 6 7 8

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

No

Сетка А показана ниже.

Например, если вы посмотрите на верхнюю левую 3\times 3 grid, вы увидите, что третье условие не выполнено, поэтому выведите No.

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

1 2 3 4 5 6 7 8 9
4 5 6 7 8 9 1 2 3
7 8 9 1 2 3 4 5 6
1 2 3 4 5 6 7 8 9
4 5 6 7 8 9 1 2 3
7 8 9 1 2 3 4 5 6
1 2 3 4 5 6 7 8 9
4 5 6 7 8 9 1 2 3
7 8 9 1 2 3 4 5 6

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

No

Сетка А показана ниже.

Например, если вы посмотрите на крайний левый столбец, вы увидите, что второе условие не выполнено, поэтому выведите No.


Пара последовательностей длины M, состоящая из положительных целых чисел не более N, (S, T) = ((S_1, S_2, \dots, S_M), (T_1, T_2, \dots, T_M)), называется хорошей парой последовательностей, когда (S, T) удовлетворяет следующему условию.

- Существует последовательность X = (X_1, X_2, \dots, X_N) длины N, состоящая из 0 и 1, которая удовлетворяет следующему условию:
- X_{S_i} \neq X_{T_i} для каждого i=1, 2, \dots, M.

Вам дана пара последовательностей длины M, состоящая из положительных целых чисел не более N: (A, B) = ((A_1, A_2, \dots, A_M), (B_1, B_2, \dots, B_M)). Если (A, B) является хорошей парой последовательностей, выведите Yes; в противном случае вывести No.

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

Входные данные даются из стандартного ввода в следующем формате:
N M
A_1 A_2 \dots A_M
B_1 B_2 \dots B_M

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

Если (A, B) — хорошая пара последовательностей, вывести Yes; в противном случае вывести No.

Ограничения

- 1 \leq N, M \leq 2 \times 10^5
- 1 \leq A_i, B_i \leq N
- Все входные значения являются целыми числами.

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

3 2
1 2
2 3

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

Yes

Если мы устанавливаем X=(0,1,0), то X — это последовательность длины N, состоящая из 0 и 1, которая удовлетворяет X_{A_1} \neq X_{B_1} и X_{A_2} \neq X_{B_2}.
Таким образом, (A, B) удовлетворяет условию быть хорошей парой последовательностей.

Образец ввода 2

3 3
1 2 3
2 3 1

Образец вывода 2

No

Ни одна последовательность X не удовлетворяет условию, поэтому (A, B) не является хорошей парой последовательностей.

Образец ввода 3

10 1
1
1

Образец вывода 3

No

Образец ввода 4

7 8
1 6 2 7 5 4 2 2
3 2 7 2 1 2 3 3

Образец вывода 4

Yes

Пара последовательностей длины M, состоящих из положительных целых чисел не больше N, (S, T) = ((S_1, S_2, \dots, S_M), (T_1, T_2, \dots, T_M)), называется хорошей парой последовательностей, если (S, T) удовлетворяет следующему условию.

- Существует последовательность X = (X_1, X_2, \dots, X_N) длины N, состоящая из 0 и 1, которая удовлетворяет следующему условию:
- X_{S_i} \neq X_{T_i} для каждого i=1, 2, \dots, M.

Вам дана пара последовательностей длины M, состоящих из положительных целых чисел не больше N: (A, B) = ((A_1, A_2, \dots, A_M), (B_1, B_2, \dots, B_M)). Если (A, B) является хорошей парой последовательностей, выведите Yes; в противном случае выведите No.

Ввод

Ввод передается из стандартного ввода в следующем формате:
N M
A_1 A_2 \dots A_M
B_1 B_2 \dots B_M

Вывод

Если (A, B) является хорошей парой последовательностей, выведите Yes; в противном случае выведите No.

Ограничения

- 1 \leq N, M \leq 2 \times 10^5
- 1 \leq A_i, B_i \leq N
- Все входные значения — целые числа.

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

3 2
1 2
2 3

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

Yes

Если установить X=(0,1,0), то X — это последовательность длины N, состоящая из 0 и 1, которая удовлетворяет X_{A_1} \neq X_{B_1} и X_{A_2} \neq X_{B_2}.
Таким образом, (A, B) удовлетворяет условию быть хорошей парой последовательностей.

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

3 3
1 2 3
2 3 1

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

No

Ни одна последовательность X не удовлетворяет условию, поэтому (A, B) не является хорошей парой последовательностей.

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

10 1
1
1

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

No

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

7 8
1 6 2 7 5 4 2 2
3 2 7 2 1 2 3 3

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

Yes


Такахаси участвовал в N соревнованиях и получил производительность P_i на i-м соревновании.
Он хочет выбрать некоторые (как минимум одно) из этих соревнований и максимизировать свой рейтинг, рассчитанный по результатам этих соревнований.
Найдите максимальный возможный рейтинг, который он может достичь, оптимально выбрав соревнования.
Здесь рейтинг Такахаси R вычисляется следующим образом, где k — количество выбранных соревнований, а (Q_1, Q_2, \ldots, Q_k) — результаты на выбранных соревнованиях в порядке его участия:

\displaystyle R=\frac{\sum_{i=1}^k (0.9)^{k-i}Q_i}{\sum_{i=1}^k (0.9)^{k-i}}-\frac{1200}{\sqrt{k}}.

Ввод

Ввод дается из стандартного ввода в следующем формате:
N
P_1 P_2 \ldots P_N

Вывод

Выведите максимальный возможный рейтинг, который может достичь Такахаси.
Ваш ответ будет считаться правильным, если абсолютная или относительная ошибка от истинного значения будет не более 10^{-6}.

Ограничения

- 1\leq N\leq 5000
- 1\leq P_i\leq 5000
- Все входные значения — целые числа.

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

3
1000 600 1200

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

256.735020470879931

Если Такахаси выберет первое и третье соревнования, его рейтинг будет:
\displaystyle R=\frac{0.9\times 1000+ 1.0\times 1200}{0.9+1.0}-\frac{1200}{\sqrt{2}}=256.73502....
Это максимальный возможный рейтинг.

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

3
600 1000 1200

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

261.423219407873376

Рейтинг максимален, когда выбраны все первое, второе и третье соревнования.

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

1
100

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

-1100.000000000000000

Рейтинг также может быть отрицательным.

Такахаши участвовал в конкурсах N и получил результат P_i в i-м конкурсе.
Он хочет выбрать некоторые (по крайней мере, один) конкурсы из них и максимизировать свой рейтинг, рассчитанные на результаты этих конкурсов.
Найдите максимально возможный рейтинг, который он может достичь, оптимально выбрав конкурсы.
Здесь рейтинг Такахаши r рассчитывается как следующее, где k - это количество выбранных конкурсов, а (Q_1, Q_2, \ ldots, Q_k) это выступления в выбранных конкурсах в порядке, в котором он участвовал:

\displaystyle R=\frac{\sum_{i=1}^k (0.9)^{k-i}Q_i}{\sum_{i=1}^k (0.9)^{k-i}}-\frac{1200}{\sqrt{k}}.

Вход

Ввод приведен из стандартного ввода в следующем формате:
N
P_1 P_2  \ldots  P_N

Выход

Распечатайте максимально возможный рейтинг, которого Такахаши может достичь.
Ваш вывод будет считаться правильным, если абсолютная или относительная ошибка из истинного значения составляет не более 10^{-6}.

Ограничения

- 1 \ leq N \ leq 5000
- 1 \ leq P_i \ leq 5000
- Все входные значения являются целыми числами.

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

3
1000 600 1200

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

256.7350204708799931

Если Такахаши выберет первые и третьи конкурсы, его рейтинг будет:
\ displaystyle R = \ frac {0.9 \ times 1000+ 1.0 \ times 1200} {0.9 + 1.0}-\ frac {1200} {\ sqrt {2}} = 256.73502 ....
Это максимально возможный рейтинг.

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

3
600 1000 1200

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

261.423219407873376

Рейтинг максимизируется, когда выбраны все первые, вторые и третьи конкурсы.

Образец ввода 3

1
100

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

-1100.00000000000000000

Рейтинг также может быть отрицательным.


В программном конкурсе представлено N задач. Для каждой i = 1, 2, \ldots, N, количество баллов за i-ю задачу равно S_i.
Выведите общий счет за все задачи с количеством баллов X или меньше.

Ввод

Ввод предоставляется из стандартного ввода в следующем формате:
N X
S_1 S_2 \ldots S_N

Вывод

Выведите ответ.

Ограничения

- Все входные значения являются целыми числами.
- 4 \leq N \leq 8
- 100 \leq S_i \leq 675
- 100 \leq X \leq 675

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

6 200
100 675 201 200 199 328

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

499

Три задачи имеют количество баллов 200 или меньше: первая, четвертая и пятая, общая сумма баллов: S_1 + S_4 + S_5 = 100 + 200 + 199 = 499.

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

8 675
675 675 675 675 675 675 675 675

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

5400

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

8 674
675 675 675 675 675 675 675 675

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

0

Есть соревнование по программированию с N задачами. Для каждого i = 1, 2, \ldots, N оценка за i-ю задачу равна S_i.
Выведите общую оценку за все задачи с оценкой X или меньше.

Ввод

Ввод дается из стандартного ввода в следующем формате:
N X
S_1 S_2 \ldots S_N

Вывод

Выведите ответ.

Ограничения

- Все входные значения являются целыми числами.
- 4 \leq N \leq 8
- 100 \leq S_i \leq 675
- 100 \leq X \leq 675

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

6 200
100 675 201 200 199 328

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

499

Три задачи имеют оценку 200 или меньше: первая, четвертая и пятая, для общей оценки S_1 + S_4 + S_5 = 100 + 200 + 199 = 499.

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

8 675
675 675 675 675 675 675 675

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

5400

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

8 674
675 675 675 675 675 675 675 675

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

0


AtCoder Kingdom использует календарь, год которого состоит из N месяцев.
Месяц i (1\leq i\leq N) содержит D _ i дней, с дня 1 месяца i до дня D _ i месяца i.
Сколько дней в году AtCoder имеют даты "repdigits"?
Здесь день j месяца i (1\leq i\leq N,1\leq j\leq D _ i) считается имеющим дату repdigit, если и только если все цифры в десятичных обозначениях i и j одинаковы.

Ввод

Ввод дается из стандартного ввода в следующем формате:
N
D _ 1 D _ 2 \ldots D _ N

Вывод

Выведите ответ.

Ограничения

- 1\leq N\leq100
- 1\leq D _ i\leq100\ (1\leq i\leq N)
- Все входные значения являются целыми числами.

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

12
31 29 31 30 31 30 31 30 31 30 31 30

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

13

В AtCoder Kingdom дни, которые имеют даты repdigit, это 1 января, 11 января, 2 февраля, 22 февраля, 3 марта, 4 апреля, 5 мая, 6 июня, 7 июля, 8 августа, 9 сентября, 1 ноября и 11 ноября, всего 13 дней.

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

10
10 1 2 3 4 5 6 7 8 100

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

1

В AtCoder Kingdom только 1 января имеет дату с повторной цифрой.

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

30
73 8 55 26 97 48 37 47 35 55 5 17 62 2 60 23 99 73 34 75 7 46 82 84 29 41 32 31 52 32

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

15

AtCoder Kingdom использует календарь, год которого состоит из N месяцев.
Месяц i (1\leq i\leq N) has D _ i дней, со дня 1 месяца i до дня D _ i месяца i.
Сколько дней в году AtCoder имеют даты "повторяющихся цифр"?
Здесь день j месяца i (1\leq i\leq N,1\leq j\leq D _ i) называется датой повторения цифры тогда и только тогда, когда все цифры в десятичных обозначениях i и j совпадают.

Input

The input is given from Standard Input in the following format:
N
D _ 1 D _ 2 \ldots D _ N

Output

Print the answer.

Constraints

- 1\leq N\leq100
- 1\leq D _ i\leq100\ (1\leq i\leq N)
- All input values are integers.

Sample Input 1

12
31 29 31 30 31 30 31 31 30 31 30 31

Sample Output 1

13

In AtCoder Kingdom, the days that have repdigit dates are January 1, January 11, February 2, February 22, March 3, April 4, May 5, June 6, July 7, August 8, September 9, November 1, and November 11, for a total of 13 days.

Sample Input 2

10
10 1 2 3 4 5 6 7 8 100

Sample Output 2

1

In AtCoder Kingdom, only January 1 has a repdigit date.

Sample Input 3

30
73 8 55 26 97 48 37 47 35 55 5 17 62 2 60 23 99 73 34 75 7 46 82 84 29 41 32 31 52 32

Sample Output 3

15

Королевство AtCoder использует календарь, в котором год состоит из N месяцев.
Месяц i (1\leq i\leq N) содержит D _ i дней, от первого дня месяца i до дня D _ i месяца i.
Сколько дней в году в королевстве AtCoder имеют даты-палиндромы?
Здесь день j месяца i (1\leq i\leq N,1\leq j\leq D _ i) считается датой-палиндромом, если и только если все цифры в десятичном представлении i и j одинаковы.

Input

The input is given from Standard Input in the following format:
N
D _ 1 D _ 2 \ldots D _ N

Output

Print the answer.

Constraints

- 1\leq N\leq100
- 1\leq D _ i\leq100\ (1\leq i\leq N)
- All input values are integers.

Sample Input 1

12
31 29 31 30 31 30 31 31 30 31 30 31

Sample Output 1

13

In AtCoder Kingdom, the days that have repdigit dates are January 1, January 11, February 2, February 22, March 3, April 4, May 5, June 6, July 7, August 8, September 9, November 1, and November 11, for a total of 13 days.

Sample Input 2

10
10 1 2 3 4 5 6 7 8 100

Sample Output 2

1

In AtCoder Kingdom, only January 1 has a repdigit date.

Sample Input 3

30
73 8 55 26 97 48 37 47 35 55 5 17 62 2 60 23 99 73 34 75 7 46 82 84 29 41 32 31 52 32

Sample Output 3

15


Вам дана строка S = S_1S_2\ldots S_N длины N, состоящая из строчных букв английского алфавита.
Кроме того, вам даны Q запросов о строке S.
Для i = 1, 2, \ldots, Q, i-й запрос представлен двумя целыми числами l_i, r_i и задает следующий вопрос.

В подстроке S_{l_i}S_{l_i+1}\ldots S_{r_i} строки S, которая простирается от l_i-го до r_i-го символа, сколько есть мест, где одна и та же строчная буква английского алфавита встречается дважды подряд?
Другими словами, сколько целых чисел p удовлетворяют условию l_i \leq p \leq r_i-1 и S_p = S_{p+1}?

Выведите ответ для каждого из Q запросов.

Ввод

Ввод поступает из стандартного ввода в следующем формате:
N Q
S
l_1 r_1
l_2 r_2
\vdots
l_Q r_Q

Вывод

Выведите Q строк.
Для i = 1, 2, \ldots, Q, i-я строка должна содержать ответ на i-й запрос.

Ограничения

- N и Q — целые числа.
- 1 \leq N, Q \leq 3 \times 10^5
- S — строка длины N, состоящая из строчных букв английского алфавита.
- l_i и r_i — целые числа.
- 1 \leq l_i \leq r_i \leq N

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

11 4
mississippi
3 9
4 10
4 6
7 7

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

2
2
0
0

Ответы на четыре запроса следующие.

-Для первого запроса, S_3S_4\ldots S_9 = ssissip имеет два места, где одна и та же строчная буква встречается дважды подряд: S_3S_4 = ss и S_6S_7 = ss.
- Для второго запроса, S_4S_5\ldots S_{10} = sissipp имеет два места, где одна и та же строчная буква встречается дважды подряд: S_6S_7 = ss и S_9S_{10} = pp.
- Для третьего запроса, S_4S_5S_6 = sis имеет ноль мест, где одна и та же строчная буква встречается дважды подряд.
- Для четвертого запроса, S_7 = s имеет ноль мест, где одна и та же строчная буква встречается дважды подряд.

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

5 1
aaaaa
1 5

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

4

S_1S_2\ldots S_5 =  aaaaa имеет четыре места, где одна и та же строчная буква встречается дважды подряд:
S_1S_2 =  aa, S_2S_3 =  aa, S_3S_4 =  aa, and S_4S_5 =  aa.

Вам дается строка S = S_1S_2\ldots S_N длины N, состоящая из строчных английских букв.
Кроме того, вам дается Q запросов о строке S.
Для i = 1, 2, \ldots, Q i-й запрос представлен двумя целыми числами l_i, r_i и запрашивает следующее.

В подстроке S_{l_i}S_{l_i+1}\ldots S_{r_i} буквы S, которая варьируется от l_i-го до r_i-го символа, сколько мест, где одна и та же строчная английская буква встречается два раза подряд?
Другими словами, сколько целых чисел p удовлетворяют l_i \leq p \leq r_i-1 и S_p = S_{p+1}?

Выведите ответ на каждый из Q-запросов.

Input

The input is given from Standard Input in the following format:
N Q
S
l_1 r_1
l_2 r_2
\vdots
l_Q r_Q

Output

Print Q lines.
For i = 1, 2, \ldots, Q, the i-th line should contain the answer to the i-th query.

Constraints

- N and Q are integers.
- 1 \leq N, Q \leq 3 \times 10^5
- S is a string of length N consisting of lowercase English letters.
- l_i and r_i are integers.
- 1 \leq l_i \leq r_i \leq N

Sample Input 1

11 4
mississippi
3 9
4 10
4 6
7 7

Sample Output 1

2
2
0
0

The answers to the four queries are as follows.

- For the first query, S_3S_4\ldots S_9 =  ssissip has two places where the same lowercase English letter occurs twice in a row: S_3S_4 =  ss and S_6S_7 =  ss.
- For the second query, S_4S_5\ldots S_{10} =  sissipp has two places where the same lowercase English letter occurs twice in a row: S_6S_7 =  ss and S_9S_{10} =  pp.
- For the third query, S_4S_5S_6 =  sis has zero places where the same lowercase English letter occurs twice in a row.
- For the fourth query, S_7 =  s has zero places where the same lowercase English letter occurs twice in a row.

Sample Input 2

5 1
aaaaa
1 5

Sample Output 2

4

S_1S_2\ldots S_5 =  aaaaa has four places where the same lowercase English letter occurs twice in a row:
S_1S_2 =  aa, S_2S_3 =  aa, S_3S_4 =  aa, and S_4S_5 =  aa.

Вам дана строка S = S_1S_2\ldots S_N длиной N, состоящая из строчных английских букв.
Кроме того, вам даны Q запросов о строке S.
Для i = 1, 2, \ldots, Q i-й запрос представлен двумя целыми числами l_i, r_i и задает следующее.

В подстроке S_{l_i}S_{l_i+1}\ldots S_{r_i} строки S, которая находится в диапазоне от l_i-го до r_i-го символа, сколько мест, где одна и та же строчная английская буква встречается дважды подряд?
Другими словами, сколько целых чисел p удовлетворяют l_i \leq p \leq r_i-1 и S_p = S_{p+1}?

Выведите ответ на каждый из Q запросов.

Ввод

Вводные данные даются из стандартного ввода в следующем формате:
N Q
S
l_1 r_1
l_2 r_2
\vdots
l_Q r_Q

Вывод

Выведите Q строк.

Для i = 1, 2, \ldots, Q i-я строка должна содержать ответ на i-й запрос.

Ограничения

- N и Q — целые числа.
- 1 \leq N, Q \leq 3 \times 10^5
- S — строка длиной N, состоящая из строчных английских букв.
- l_i и r_i — целые числа.
- 1 \leq l_i \leq r_i \leq N

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

11 4
миссисипи
3 9
4 10
4 6
7 7

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

2
2
0
0

Ответы на четыре запроса следующие.

- Для первого запроса S_3S_4\ldots S_9 = ssissip имеет два места, где одна и та же строчная английская буква встречается дважды подряд: S_3S_4 = ss и S_6S_7 = ss.
- Для второго запроса S_4S_5\ldots S_{10} = sissipp имеет два места, где одна и та же строчная английская буква встречается дважды подряд: S_6S_7 = ss и S_9S_{10} = pp.
- Для третьего запроса S_4S_5S_6 = sis имеет ноль мест, где одна и та же строчная английская буква встречается дважды подряд.
- Для четвертого запроса S_7 = s имеет ноль мест, где одна и та же строчная английская буква встречается дважды подряд.

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

5 1
aaaaa
1 5

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

4

S_1S_2\ldots S_5 = aaaaa имеет четыре места, где одна и та же строчная английская буква встречается дважды подряд:
S_1S_2 = aa, S_2S_3 = aa, S_3S_4 = aa и S_4S_5 = aa.


Вам дана строка S, состоящая из трех различных символов: A, B и C.
Пока S содержит строку ABC как последовательную подстроку, повторяйте следующую операцию:

Удалите самое левое вхождение подстроки ABC из S.

Выведите окончательную строку S после выполнения вышеуказанной процедуры.

Ввод

Ввод предоставляется через стандартный ввод в следующем формате:
S

Вывод

Выведите ответ.

Ограничения

- S — это строка длиной от 1 до 2 \times 10^5 включительно, состоящая из символов A, B и C.

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

BAABCBCCABCAC

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

BCAC

Для данной строки S = BAABCBCCABCAC, операции выполняются следующим образом.

- В первой операции удаляется ABC с 3-го по 5-й символ в S = BAABCBCCABCAC, результатом является S = BABCCABCAC.
- Во второй операции удаляется ABC с 2-го по 4-й символ в S = BABCCABCAC, результатом является S = BCABCAC.
- В третьей операции удаляется ABC с 3-го по 5-й символ в S = BCABCAC, результатом является S = BCAC.

Поэтому окончательная S будет BCAC.

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

ABCABC

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

В этом примере окончательная S — пустая строка.

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

AAABCABCABCAABCABCBBBAABCBCCCAAABCBCBCC

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

AAABBBCCC

Вам дана строка S, состоящая из трех различных символов: A, B и C.
Пока S содержит строку ABC как последовательную подстроку, повторите следующую операцию:

Удалите самое левое вхождение подстроки ABC из S.

Выведите окончательную строку S после выполнения вышеуказанной процедуры.

Ввод

Ввод дается из стандартного ввода в следующем формате:
S

Вывод

Выведите ответ.

Ограничения

- S — это строка длиной от 1 до 2 \times 10^5 включительно, состоящая из символов A, B и C.

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

BAABCBCCABCAC

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

BCAC

Для данной строки S = BAABCBCCABCAC операции выполняются следующим образом.

- В первой операции ABC с 3-го по 5-й символ в S = BAABCBCCABCAC удаляется, в результате чего получается S = BABCCABCAC.
- Во второй операции ABC с 2-го по 4-й символ в S = BABCCABCAC удаляется, в результате чего получается S = BCABCAC.
- В третьей операции ABC с 3-го по 5-й символ в S = BCABCAC удаляется, в результате чего получается S = BCAC.

Следовательно, конечный S — BCAC.

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

ABCABC

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

В этом примере конечный S — пустая строка.

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

AAABCABCABCAABCABCBBAABCBCCCAAABCBCBCC

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

AAABBBCCC

Вам дана строка S, состоящая из трёх различных символов: A, B, и C.
Пока S содержит строку ABC как последовательную подстроку, повторите следующую операцию:

Удалите самое левое вхождение подстроки ABC из S.

Выведите окончательную строку S после выполнения вышеуказанной процедуры.

Ввод

Ввод даётся из стандартного ввода в следующем формате:
S

Вывод

Выведите ответ.

Ограничения

- S это строка длиной от 1 до 2 \times 10^5, включительно, состоящая из символов A, B, и C.

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

BAABCBCCABCAC

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

BCAC

Для данной строки S = BAABCBCCABCAC, операции выполняются следующим образом.

- В первой операции ABC с 3-го по 5-й символ в S = BAABCBCCABCAC удаляется, в результате чего получается S = BABCCABCAC.
- Во второй операции ABC с 2-го по 4-й символ в S = BABCCABCAC удаляется, в результате чего получается S = BCABCAC.
- В третьей операции ABC с 3-го по 5-й символ в S = BCABCAC удаляется, в результате чего получается S = BCAC.

Следовательно, конечный S это BCAC.

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

ABCABC

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

В этом примере конечный S пустая строка.

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

AAABCABCABCAABCABCBBAABCBCCCAAABCBCBCC

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

AAABBBCCC


Дан взвешенный простой связный неориентированный граф с N вершинами и M рёбрами, где вершины пронумерованы от 1 до N, а рёбра пронумерованы от 1 до M. Также дано положительное целое число K.
Ребро i\ (1\leq i\leq M) соединяет вершины u_i и v_i и имеет вес w_i.
Для остовного дерева T этого графа стоимость T определяется как сумма по модулю K весов рёбер в T.
Найдите минимальную стоимость остовного дерева этого графа.

Ввод

Вводится со стандартного ввода в следующем формате:
N M K
u_1 v_1 w_1
u_2 v_2 w_2
\vdots
u_M v_M w_M

Вывод

Выведите ответ.

Ограничения

- 2\leq N\leq8
- N-1\leq M\leq\dfrac{N(N-1)}2
- 1\leq K\leq10^{15}
- 1\leq u_i\lt v_i\leq N\ (1\leq i\leq M)
- 0\leq w_i\lt K\ (1\leq i\leq M)
- Данный граф простой и связный.
- Все входные значения — целые числа.

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

5 6 328
1 2 99
1 3 102
2 3 86
2 4 94
2 5 95
3 4 81

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

33

Данный граф показан ниже:

Стоимость остовного дерева, содержащего рёбра 1,3,5,6, составляет (99+86+81+95)\bmod{328}=361\bmod{328}=33.
Стоимость любого остовного дерева этого графа не меньше 33, поэтому выведите 33.

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

6 5 998244353
1 2 337361568
1 6 450343304
2 3 61477244
2 5 745383438
4 5 727360840

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

325437688

Выведите стоимость единственного остовного дерева этого графа, которая равна 325437688.

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

8 28 936294041850197
1 2 473294720906780
1 3 743030800139244
1 4 709363019414774
1 5 383643612490312
1 6 557102781022861
1 7 623179288538138
1 8 739618599410809
2 3 857687812294404
2 4 893923168139714
2 5 581822471860662
2 6 740549363586558
2 7 307226438833222
2 8 447399029952998
3 4 636318083622768
3 5 44548707643622
3 6 307262781240755
3 7 12070267388230
3 8 700247263184082
4 5 560567890325333
4 6 704726113717147
4 7 588263818615687
4 8 549007536393172
5 6 779230871080408
5 7 825982583786498
5 8 713928998174272
6 7 751331074538826
6 8 449873635430228
7 8 11298381761479

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

11360716373

Обратите внимание, что ввод и ответ могут не поместиться в 32\operatorname{bit} целое число.


Вам дана строка S, состоящая из заглавных английских букв. Разделите каждый символ S пробелом и выведите их по одному в порядке следования.

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

Входные данные подаются из стандартного ввода в следующем формате:
S

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

Разделите каждый символ S пробелом и выведите их по одному.

Ограничения

- S — это строка, состоящая из заглавных английских букв, длиной от 2 до 100 включительно.

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

ABC

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

A B C

Разделите A, B и C пробелами и выведите их по одному.
Нет необходимости выводить пробел после C.

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

ZZZZZZZ

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

Z Z Z Z Z Z Z

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

OOXXOO

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

O O X X O O

Вам дана строка S, состоящая из заглавных английских букв. Разделите каждый символ S пробелом и выведите их один за другим по порядку.

Ввод

Ввод дается из стандартного ввода в следующем формате:
S

Вывод

Разделите каждый символ S пробелом и выведите их один за другим.

Ограничения

- S — это строка, состоящая из заглавных английских букв длиной от 2 до 100 включительно.

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

ABC

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

A B C

Разделите A, B и C пробелами и выведите их один за другим.
Нет необходимости печатать пробел после C.

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

ZZZZZZZ

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

Z Z Z Z Z Z Z

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

OOXXOO

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

O O X X O O

Вам дают строка S, состоящую из верхних английских букв. Разделите каждый символ S с пространством и распечатайте их один за другим по порядку.

Вход

Ввод приведен из стандартного ввода в следующем формате:
S

Выход

Разделите каждый символ S с пространством и распечатайте их один за другим.

Ограничения

- S - это струна, состоящая из верхних английских букв с длиной от 2 до 100, включительно.

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

ABC

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

A B C

Распределите A, B и C с пробелами и распечатайте их один за другим.
Нет необходимости печатать пробел после C.

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

ZZZZZZZ

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

Z Z Z Z Z Z Z

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

OOXXOO

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

O O X X O O


Вам даны N целых чисел A_1, A_2, \ldots, A_N. Найдите наибольшее из этих чисел, которое не является наибольшим.
Ограничения в данной задаче гарантируют существование ответа.

Ввод

Ввод дается из стандартного ввода в следующем формате:
N
A_1 A_2 \ldots A_N

Вывод

Выведите ответ.

Ограничения

- 2 \leq N \leq 100
- 1 \leq A_i \leq 100
- Не все A_1, A_2, \ldots, A_N равны.
- Все входные значения являются целыми числами.

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

5
2 1 3 3 2

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

2

Наибольшее число среди 2,1,3,3,2 — это 3.
Числа, которые не равны 3 среди 2,1,3,3,2 — это 2,1,2, среди которых наибольшее — 2.

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

4
4 3 2 1

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

3

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

8
22 22 18 16 22 18 18 22

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

18

Вам даны N целых чисел A_1, A_2, \ldots, A_N. Найдите наибольшее среди тех целых чисел, которые не являются самыми большими.
Ограничения этой проблемы гарантируют, что ответ существует.

Ввод

Вводные данные передаются из стандартного ввода в следующем формате:
N
A_1 A_2 \ldots A_N

Вывод

Выведите ответ.

Ограничения

- 2 \leq N \leq 100
- 1 \leq A_i \leq 100
- Это не тот случай, когда все A_1, A_2, \ldots, A_N равны.
- Все входные значения являются целыми числами.

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

5
2 1 3 3 2

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

2

Наибольшее целое число среди 2,1,3,3,2 это 3.
Целые числа, отличные от 3 среди 2,1,3,3,2 это 2,1,2, среди которых наибольшее это 2.

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

4
4 3 2 1

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

3

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

8
22 22 18 16 22 18 18 22

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

18

Вам даны N целых числа A_1, A_2, \ldots,A_N.Найдите самый большой среди тех целых чисел, которые не являются самыми большими.
Ограничения этой проблемы гарантируют, что ответ существует.

Вход

Ввод приведен из стандартного ввода в следующем формате:
N
A_1 A_2 \ldotsA_N

Выход

Распечатать ответ.

Ограничения

- 2 \leq N \leq 100
-1 \leq A_i \leq 100
-Не все A_1, A_2, \ldots, A_N одинаковы.
- Все входные значения являются целыми числами.

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

5
2 1 3 3 2

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

2

Самое большое целое число среди 2,1,3,3,2 — это 3.
Целые числа, которые не составляют 3 среди 2,1,3,3,2, составляют 2,1,2, среди которых самый большой составляет 2.

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

4
4 3 2 1

Образец вывода 2

3

Образец ввода 3

8
22 22 18 16 22 18 18 22

Выбор вывода 3

18


Дана строка S длины N, состоящая из строчных английских букв.
Найдите количество непустых подстрок S, которые являются повторениями одного символа. Здесь две подстроки, равные как строки, не различаются, даже если они получены по-разному.
Непустая подстрока S — это строка длиной не менее одного символа, полученная путем удаления нуля или более символов с начала и нуля или более символов с конца S. Например, ab и abc являются непустыми подстроками abc, а ac и пустая строка — нет.

Ввод

Вводится из стандартного ввода в следующем формате:
N
S

Вывод

Выведите количество непустых подстрок S, которые являются повторениями одного символа.

Ограничения

- 1 \leq N \leq 2\times 10^5
- S — строка длины N, состоящая из строчных английских букв.

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

6
aaabaa

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

4

Непустыми подстроками S, которые являются повторениями одного символа, являются a, aa, aaa и b; их четыре. Обратите внимание, что существует несколько способов получения a или aa из S, но каждую следует подсчитывать только один раз.

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

1
x

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

1

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

12
ssskkyskkkky

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

8

Вам дана строка S длиной N, состоящая из строчных Английских букв.
Найдите количество непустых подстрок S, которые являются повторениями одного символа. Здесь две подстроки, которые равны как строки, не различаются, даже если они получены по-разному.
Непустая подстрока S это строка длиной не менее одного, полученная путем удаления нуля или более символов из начала и нуля или более символов из конца S. Например, ab и abc являются непустыми подстроками abc, тогда как ac и пустая строка — нет.

Ввод

Ввод даётся из стандартного ввода в следующем формате:
N
S

Вывод

Выведите количество непустых подстрок S, которые являются повторениями одного символа.

Ограничения

- 1 \leq N \leq 2\times 10^5
- S это строка длиной N, состоящая из строчных Английских букв.

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

6
aaabaa

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

4

Непустые подстроки S, которые являются повторениями одного символа, это a, aa, aaa, and b; их четыре. Обратите внимание, что существует несколько способов получить a или aa из S, но каждый из них следует учитывать только один раз.

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

1
x

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

1

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

12
ssskkyskkkky

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

8


Проводятся выборы для выбора одного победителя из N кандидатов с номерами 1, 2, \ldots, N, и было подано M голосов.
Каждый голос отдаётся ровно за одного кандидата, причем i-й голос отдан за кандидата A_i.
Голоса будут подсчитываться в порядке от первого к последнему, и после подсчёта каждого голоса текущий победитель будет обновлен и отображен.
Победителем становится кандидат с наибольшим количеством голосов среди подсчитанных. Если есть несколько кандидатов с наибольшим количеством голосов, победителем становится кандидат с наименьшим номером кандидата.
Для каждого i = 1, 2, \ldots, M определите победителя, подсчитывая только первые i голосов.

Ввод

Ввод дается из стандартного ввода в следующем формате:
N M
A_1 A_2 \ldots A_M

Вывод

Выведите M строк.
i-я строка должна содержать номер кандидата-победителя, подсчитывая только первые i голосов.

Ограничения

- 1 \leq N, M \leq 200000
- 1 \leq A_i \leq N
- Все входные значения являются целыми числами.

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

3 7
1 2 2 3 1 3 3

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

1
1
2
2
1
1
3

Пусть C_i обозначает количество голосов за кандидата i.

- После подсчёта первого голоса, (C_1, C_2, C_3) = (1, 0, 0), поэтому победитель 1.
- После подсчёта второго голоса, (C_1, C_2, C_3) = (1, 1, 0), поэтому победитель 1.
- После подсчёта третьего голоса, (C_1, C_2, C_3) = (1, 2, 0), поэтому победитель 2.
- После подсчёта четвертого голоса, (C_1, C_2, C_3) = (1, 2, 1), поэтому победитель 2.
- После подсчёта пятого голоса, (C_1, C_2, C_3) = (2, 2, 1), поэтому победитель 1.
- После подсчёта шестого голоса, (C_1, C_2, C_3) = (2, 2, 2), поэтому победитель 1.
- После подсчета седьмого голоса, (C_1, C_2, C_3) = (2, 2, 3), поэтому победителем становится 3.

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

100 5
100 90 80 70 60

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

100
90
80
70
60

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

9 8
8 8 2 2 8 8 2 2

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

8
8
8
2
8
8
8
2

Проходит выборы, чтобы выбрать одного победителя из N кандидатов с номерами кандидатов 1, 2, \ldots, N, и было подано M голосов.
Каждый голос подан за одного кандидата, i-й голос подан за кандидата A_i.
Голоса будут подсчитываться в порядке от первого до последнего, и после подсчета каждого голоса текущий победитель будет обновлен и показан.
Кандидат с наибольшим количеством голосов среди подсчитанных является победителем. Если есть несколько кандидатов с наибольшим количеством голосов, победителем становится кандидат с наименьшим номером.
Для каждого i = 1, 2, \ldots, M определите победителя, учитывая только первые i голосов.

Ввод

Ввод предоставляется через стандартный ввод в следующем формате:
N M
A_1 A_2 \ldots A_M

Вывод

Выведите M строк.
i-я строка должна содержать номер кандидата-победителя при подсчете только первых i голосов.

Ограничения

- 1 \leq N, M \leq 200000
- 1 \leq A_i \leq N
- Все значения на входе являются целыми числами.

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

3 7
1 2 2 3 1 3 3

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

1
1
2
2
1
1
3

Пусть C_i обозначает количество голосов за кандидата i.

- После подсчета первого голоса (C_1, C_2, C_3) = (1, 0, 0), поэтому победитель 1.
- После подсчета второго голоса (C_1, C_2, C_3) = (1, 1, 0), поэтому победитель 1.
- После подсчета третьего голоса (C_1, C_2, C_3) = (1, 2, 0), поэтому победитель 2.
- После подсчета четвертого голоса (C_1, C_2, C_3) = (1, 2, 1), поэтому победитель 2.
- После подсчета пятого голоса (C_1, C_2, C_3) = (2, 2, 1), поэтому победитель 1.
- После подсчета шестого голоса (C_1, C_2, C_3) = (2, 2, 2), поэтому победитель 1.
- После подсчета седьмого голоса (C_1, C_2, C_3) = (2, 2, 3), поэтому победитель 3.

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

100 5
100 90 80 70 60

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

100
90
80
70
60

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

9 8
8 8 2 2 8 8 2 2

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

8
8
8
2
8
8
8
2


Вам даны две строки: S, состоящая из заглавных букв английского алфавита и имеющая длину N, и T, также состоящая из заглавных букв английского алфавита и имеющая длину M\ (\leq N). Есть строка X длиной N, состоящая только из символа #. Необходимо определить, можно ли преобразовать X в S, выполняя следующую операцию сколько угодно раз:

- Выберите M последовательных символов в X и замените их на T.

Ввод

Ввод задается через стандартный ввод в следующем формате:
N M
S
T

Вывод

Выведите Yes, если можно преобразовать X в S; выведите No в противном случае.

Ограничения

- 1 \leq N \leq 2\times 10^5
- 1 \leq M \leq \min(N, 5)
- S — строка из заглавных английских букв длиной N.
- T — строка из заглавных английских букв длиной M.

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

7 3
ABCBABC
ABC

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

Yes

Пусть X[l:r] обозначает часть от l-го до r-го символа X. Вы можете сделать X соответствующей S, выполняя операции следующим образом.

- Замените X[3:5] на T. X становится ##ABC##.
- Замените X[1:3] на T. X становится ABCBC##.
- Замените X[5:7] на T. X становится ABCBABC.

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

7 3
ABBCABC
ABC

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

No

Невозможно сделать X соответствующей S, какие бы операции вы ни выполняли.

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

12 2
XYXXYXXYYYXY
XY

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

Yes

Вам даны две строки: S, которая состоит из заглавных английских букв и имеет длину N, и T, которая также состоит из заглавных английских букв и имеет длину M\ (\leq N).
Имеется строка X длины N, состоящая только из символа #. Определите, возможно ли заставить X соответствовать S, выполнив следующую операцию любое количество раз:

- Выберите M последовательных символов в X и замените их на T.

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

Входные данные даются из стандартного ввода в следующем формате:
N M
S
T

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

Выведите Yes, если возможно заставить X соответствовать S; выведите No в противном случае.

Ограничения

- 1 \leq N \leq 2\times 10^5
- 1 \leq M \leq \min(N, 5)
- S — строка, состоящая из заглавных английских букв длиной N.
- T — строка, состоящая из заглавных английских букв длиной M.

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

7 3
ABCBABC
ABC

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

Yes

Ниже пусть X[l:r] обозначает часть от l-го до r-го символа X.
Вы можете заставить X соответствовать S, действуя следующим образом.

- Замените X[3:5] на T. X становится ##ABC##.
- Замените X[1:3] на T. X становится ABCBC##.
- Замените X[5:7] на T. X становится ABCBABC.

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

7 3
ABBCABC
ABC

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

No

Независимо от того, как вы работаете, невозможно заставить X соответствовать S.

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

12 2
XYXXYXXYYYXY
XY

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

Yes

Вам даны две строки: S, которая состоит из заглавных английских букв и имеет длину N, и T, которая также состоит из заглавных английских букв и имеет длину M\ (\leq N).
Существует строка X длины N, состоящая только из символа #. Определите, можно ли заставить X соответствовать S, выполнив следующую операцию любое количество раз:

- Выберите M последовательных символов в X и замените их на T.

Вход

Входные данные передаются из стандартного ввода в следующем формате:
N M
S
T

Выход

Выведите Yes, если можно сделать так, чтобы X соответствовало S, в противном случае выведите No;

Ограничения

- 1 \leq N \leq 2\times 10^5
- 1 \leq M \leq \min(N, 5)
— S — строка, состоящая из заглавных английских букв длиной N.
— T — строка, состоящая из заглавных английских букв длиной M.

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

7 3
АВСBABC
АВС

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

Yes

Ниже пусть X[l:r] обозначает часть от l-го до r-го символа X.
Вы можете сделать так, чтобы X соответствовало S, действуя следующим образом.

- Замените X[3:5] на T. X станет ##ABC##.
- Замените X[1:3] на T. X станет ABCBC##.
- Замените X[5:7] на T. X станет ABCBABC.

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

7 3
АББКАВС
АВС

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

No

Независимо от того, как вы действуете, невозможно заставить X соответствовать S.

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

12 2
XYXXYXXYYYXY
XY

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

Yes


У вас есть N коробок, пронумерованных 1, 2, \ldots, N. Изначально в коробке i находится один шар цвета C_i.
Вам даны Q запросов, которые вы должны обработать по порядку.
Каждый запрос задан парой целых чисел (a,b) и просит вас выполнить следующее:

- Переместить все шары из коробки a в коробку b, а затем напечатать количество разных цветов шаров в коробке b.

Здесь коробки a и b могут быть пустыми.

Ввод

Ввод поступает из стандартного ввода в следующем формате, где \text{query}_i представляет собой i-й запрос:
N Q
C_1 C_2 \ldots C_N
\text{query}_1
\text{query}_2
\vdots
\text{query}_Q

Каждый запрос задан в следующем формате:
a b

Вывод

Напечатайте Q строк.
i-я строка должна содержать ответ на i-й запрос.

Ограничения

- 1 \leq N, Q \leq 200000
- 1 \leq C_i \leq N
- 1 \leq a, b \leq N
- a \neq b
- Все входные значения - целые числа.

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

6 5
1 1 1 2 2 3
1 2
6 4
5 1
3 6
4 6

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

1
2
1
1
3

-
Для первого запроса переместите все шары из коробки 1 в коробку 2. Коробка 2 теперь содержит два шара цвета 1, поэтому напечатайте 1.

-
Для второго запроса переместите все шары из коробки 6 в коробку 4. Коробка 4 теперь содержит один шар цвета 2 и один шар цвета 3, поэтому напечатайте 2.

-
Для третьего запроса переместите все шары из коробки 5 в коробку 1. Коробка 1 теперь содержит один шар цвета 2, поэтому напечатайте 1.

-
Для четвертого запроса переместите все шары из коробки 3 в коробку 6. Коробка 6 теперь содержит один шар цвета 1, поэтому напечатайте 1.

-
Для пятого запроса переместите все шары из коробки 4 в коробку 6. Коробка 6 теперь содержит один шар цвета 1, один шар цвета 2 и один шар цвета 3, поэтому напечатайте 3.

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

5 3
2 4 2 4 2
3 1
2 5
3 2

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

1
2
0


N человек, пронумерованных 1,2,\dots,N, сдали экзамен, и человек i набрал A_i очков.
Только те, кто набрал не менее L очков, проходят этот экзамен.
Определите, сколько человек из N сдали экзамен.

Ввод

Ввод дается из стандартного ввода в следующем формате:
N L
A_1 A_2 \dots A_N

Вывод

Выведите ответ в виде целого числа.

Ограничения

- Все входные значения являются целыми числами.
- 1 \le N \le 100
- 1 \le L \le 1000
- 0 \le A_i \le 1000

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

5 60
60 20 100 90 40

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

3

Пять человек сдали экзамен. Нужно набрать не менее 60 очков, чтобы пройти.

- Человек 1 набрал 60 очков, поэтому он прошел.
- Человек 2 набрал 20 очков, поэтому он не прошел.
- Человек 3 набрал 100 очков, поэтому он прошел.
- Человек 4 набрал 90 очков, поэтому он прошел.
- Человек 5 набрал 40 очков, поэтому он не прошел.

Из вышеизложенного видно, что три человека прошли.

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

4 80
79 78 77 76

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

0

Могут быть случаи, когда никто не прошел.

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

10 50
31 41 59 26 53 58 97 93 23 84

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

6

N человек разметили 1,2,\dots,N что сдавали экзамен, а человек i набрал A_i очков.
Только те, кто набрал хотя бы L баллов, сдали этот экзамен.
Определите, сколько человек из N сдали экзамен.

Input

The input is given from Standard Input in the following format:
N L
A_1 A_2 \dots A_N

Output

Print the answer as an integer.

Constraints

- All input values are integers.
- 1 \le N \le 100
- 1 \le L \le 1000
- 0 \le A_i \le 1000

Sample Input 1

5 60
60 20 100 90 40

Sample Output 1

3

Five people took the exam. You need to score at least 60 points to pass.

- Person 1 scored 60 points, so they passed.
- Person 2 scored 20 points, so they did not pass.
- Person 3 scored 100 points, so they passed.
- Person 4 scored 90 points, so they passed.
- Person 5 scored 40 points, so they did not pass.

From the above, we can see that three people have passed.

Sample Input 2

4 80
79 78 77 76

Sample Output 2

0

There may be cases no one has passed.

Sample Input 3

10 50
31 41 59 26 53 58 97 93 23 84

Sample Output 3

6


Дан целочисленный массив A=(A_1,A_2,\ldots,A_N) длины N и целые числа L и R, такие, что L\leq R.
Для каждого i=1,2,\ldots,N найдите целое число X_i, удовлетворяющее обоим из следующих условий. Учтите, что искомое целое число всегда определяется однозначно.

- L\leq X_i \leq R.
- Для каждого целого числа Y, такого что L \leq Y \leq R, выполняется |X_i - A_i| \leq |Y - A_i|.

Ввод

Ввод поступает из стандартного ввода в следующем формате:
N L R
A_1 \ldots A_N

Вывод

Выведите X_i для i=1,2,\ldots,N, разделенные пробелами.

Ограничения

- 1\leq N\leq 2\times 10^5
- 1\leq L\leq R \leq 10^9
- 1\leq A_i\leq 10^9
- Все входные значения — целые числа.

Пример введения 1

5 4 7
3 1 4 9 7

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

4 4 4 7 7

Для i=1:

- |4-3|=1
- |5-3|=2
- |6-3|=3
- |7-3|=4

Таким образом, X_i = 4.

Пример введения 2

3 10 10
11 10 9

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

10 10 10

Вам дана последовательность целых чисел A=(A_1,A_2,\ldots,A_N) длиной N и целые числа  L и R так, что L\leq R.
Для каждого i=1,2,\ldots,N, найдите целое число X_i которое удовлетворяет обоим следующим условиям. Учтите, что искомое целое число всегда определяется однозначно.

- L\leq X_i \leq R.
- Для каждого целого числа Y что L \leq Y \leq R, утверждается, что |X_i - A_i| \leq |Y - A_i|.

Input

The input is given from Standard Input in the following format:
N L R
A_1 \ldots A_N

Output

Print X_i for i=1,2,\ldots,N, separated by spaces.

Constraints

- 1\leq N\leq 2\times 10^5
- 1\leq L\leq R \leq 10^9
- 1\leq A_i\leq 10^9
- All input values are integers.

Sample Input 1

5 4 7
3 1 4 9 7

Sample Output 1

4 4 4 7 7

For i=1:

- |4-3|=1
- |5-3|=2
- |6-3|=3
- |7-3|=4

Thus, X_i = 4.

Sample Input 2

3 10 10
11 10 9

Sample Output 2

10 10 10

Дан целочисленный массив A=(A_1,A_2,\ldots,A_N) длины N и целые числа L и R, такие, что L\leq R.
Для каждого i=1,2,\ldots,N найдите целое число X_i, удовлетворяющее обоим из следующих условий. Учтите, что искомое целое число всегда определяется однозначно.

- L\leq X_i \leq R.
- Для каждого целого числа Y, такого что L \leq Y \leq R, выполняется |X_i - A_i| \leq |Y - A_i|.

Ввод

Ввод поступает из стандартного ввода в следующем формате:
N L R
A_1 \ldots A_N

Вывод

Выведите X_i для i=1,2,\ldots,N, разделенные пробелами.

Ограничения

- 1\leq N\leq 2\times 10^5
- 1\leq L\leq R \leq 10^9
- 1\leq A_i\leq 10^9
- Все входные значения — целые числа.

Пример введения 1

5 4 7
3 1 4 9 7

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

4 4 4 7 7

Для i=1:

- |4-3|=1
- |5-3|=2
- |6-3|=3
- |7-3|=4

Таким образом, X_i = 4.

Пример введения 2

3 10 10
11 10 9

Пример выведения 2

10 10 10


Дано положительное целое число D.
Найдите минимальное значение |x^2+y^2-D| для неотрицательных целых чисел x и y.

Ввод

Вводится через стандартный ввод в следующем формате:
D

Вывод

Выведите ответ.

Ограничения

- 1\leq D \leq 2\times 10^{12}
- Все входные значения являются целыми числами.

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

21

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

1

Для x=4 и y=2, у нас |x^2+y^2-D| = |16+4-21|=1.
Нет таких неотрицательных целых чисел x и y, для которых |x^2+y^2-D|=0, поэтому ответ 1.

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

998244353

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

0

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

264428617

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

32

Вам дано положительное целое число D.
Найдите минимальное значение |x^2+y^2-D| для неотрицательных целых чисел x и y.

Ввод

Ввод дается из стандартного ввода в следующем формате:
D

Вывод

Выведите ответ.

Ограничения

- 1\leq D \leq 2\times 10^{12}
- Все входные значения являются целыми числами.

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

21

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

1

Для x=4 и y=2 имеем |x^2+y^2-D| = |16+4-21|=1.
Не существует неотрицательных целых чисел x и y, таких что |x^2+y^2-D|=0, поэтому ответ 1.

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

998244353

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

0

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

264428617

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

32


Дан сетка N \times N. Пусть (i,j) обозначает ячейку в i-й строке сверху и j-й колонке слева. Состояния ячеек заданы с помощью N строк длиной N, S_1, S_2, \dots, S_N, в следующем формате:

- Если j-й символ S_i равен o, то в ячейке (i,j) написана o.
- Если j-й символ S_i равен x, то в ячейке (i,j) написана x.

Найдите количество троек ячеек, которые удовлетворяют всем следующим условиям:

- Три ячейки в тройке различны.
- Во всех трех ячейках написана o.
- Ровно две из ячеек находятся в одной строке.
- Ровно две из ячеек находятся в одном столбце.

Здесь две тройки считаются разными, если и только если какая-то ячейка содержится ровно в одной из троек.

Ввод

Ввод дается из стандартного ввода в следующем формате:
N
S_1
S_2
\vdots
S_N

Вывод

Выведите ответ в виде целого числа.

Ограничения

- N — целое число от 2 до 2000, включительно.
- S_i — строка длиной N, состоящая из o и x.

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

3
ooo
oxx
xxo

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

4

Следующие четыре тройки удовлетворяют условиям:

- (1,1),(1,2),(2,1)
- (1,1),(1,3),(2,1)
- (1,1),(1,3),(3,3)
- (1,2),(1,3),(3,3)

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

4
oxxx
xoxx
xxox
xxxo

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

0

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

15
xooxxooooxxxoox
oxxoxoxxxoxoxxo
oxxoxoxxxoxoxxx
ooooxooooxxoxxx
oxxoxoxxxoxoxxx
oxxoxoxxxoxoxxo
oxxoxooooxxxoox
xxxxxxxxxxxxxxx
xooxxxooxxxooox
oxxoxoxxoxoxxxo
xxxoxxxxoxoxxoo
xooxxxooxxoxoxo
xxxoxxxxoxooxxo
oxxoxoxxoxoxxxo
xooxxxooxxxooox

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

2960

Вам дана сетка N \times N. Пусть (i,j) обозначает ячейку в i-й строке сверху и j-м столбце слева.
Состояния ячеек задаются строками N длины N, S_1, S_2, \dots, S_N в следующем формате:

- Если j-й символ S_i — o, то в ячейке (i,j) записан символ o.
- Если j-й символ S_i — x, то в ячейке (i,j) записан символ x.

Найдите количество троек ячеек, удовлетворяющих всем следующим условиям:

- Три ячейки в тройке различны.
- Во всех трех ячейках записан символ o.
- Ровно две ячейки находятся в одной строке.
- Ровно две ячейки находятся в одном столбце.

Здесь две тройки считаются разными, если и только если какая-то ячейка содержится ровно в одной из троек.

Ввод

Вводные данные даются из стандартного ввода в следующем формате:
N
S_1
S_2
\vdots
S_N

Вывод

Выведите ответ как целое число.

Ограничения

- N — целое число от 2 до 2000 включительно.
- S_i — строка длины N, состоящая из o и x.

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

3
ooo
oxx
xxo

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

4

Следующие четыре тройки удовлетворяют условиям:

- (1,1),(1,2),(2,1)
- (1,1),(1,3),(2,1)
- (1,1),(1,3),(3,3)
- (1,2),(1,3),(3,3)

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

4
oxxx
xoxx
xxox
xxxo

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

0

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

15
xooxxooooxxxoox
oxxoxoxxxoxoxxo
oxxoxoxxxoxoxxx
ooooxooooxxoxxx
oxxoxoxxxoxoxxx
oxxoxoxxxoxoxxo
oxxoxooooxxxoox
xxxxxxxxxxxxxxx
xooxxxooxxxooox
oxxoxoxxoxoxxxo
xxxoxxxxoxoxxoo
xooxxxooxxoxoxo
xxxoxxxxoxooxxo
oxxoxoxxoxoxxxo
xooxxxooxxxooox

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

2960

Дана сетка N \times N. Пусть (i,j) обозначает ячейку в i-й строке сверху и j-м столбце слева. Состояния ячеек заданы с помощью N строк длиной N, S_1, S_2, \dots, S_N в следующем формате:

- Если j-й символ S_i равен o, то в ячейке (i,j) написан символ o.
- Если j-й символ S_i равен x, то в ячейке (i,j) написан символ x.

Найди количество троек ячеек, которые удовлетворяют всем следующим условиям:

- Три ячейки в тройке различны.
- Во всех трех ячейках написан символ o.
- Ровно две из ячеек находятся в одной строке.
- Ровно две из ячеек находятся в одном столбце.

Здесь две тройки считаются различными тогда и только тогда, когда какая-то ячейка содержится ровно в одной из троек.

Ввод

Ввод осуществляется посредством стандартного ввода в следующем формате:
N
S_1
S_2
\vdots
S_N

Вывод

Выведи ответ в виде целого числа.

Ограничения

- N — целое число от 2 до 2000 включительно.
- S_i — строка длиной N, состоящая из o и x.

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

3
ooo
oxx
xxo

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

4

Следующие четыре тройки удовлетворяют условиям:

- (1,1),(1,2),(2,1)
- (1,1),(1,3),(2,1)
- (1,1),(1,3),(3,3)
- (1,2),(1,3),(3,3)

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

4
oxxx
xoxx
xxox
xxxo

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

0

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

15
xooxxooooxxxoox
oxxoxoxxxoxoxxo
oxxoxoxxxoxoxxx
ooooxooooxxoxxx
oxxoxoxxxoxoxxx
oxxoxoxxxoxoxxo
oxxoxooooxxxoox
xxxxxxxxxxxxxxx
xooxxxooxxxooox
oxxoxoxxoxoxxxo
xxxoxxxxoxoxxoo
xooxxxooxxoxoxo
xxxoxxxxoxooxxo
oxxoxoxxoxoxxxo
xooxxxooxxxooox

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

2960


Вам дана последовательность A=(A_1,A_2,\dots,A_N) длины N.
Отвечайте на следующие Q запросов в порядке их поступления.
k-й запрос дан в следующем формате:
i_k x_k

- Сначала измените A_{i_k} на x_k. Это изменение будет сохраняться в последующих запросах.
- Затем напечатайте \rm{mex} последовательности A.
- \rm{mex} последовательности A — это наименьшее неотрицательное целое число, отсутствующее в A.

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

Входные данные подаются через стандартный ввод в следующем формате:
N Q
A_1 A_2 \dots A_N
i_1 x_1
i_2 x_2
\vdots
i_Q x_Q

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

Напечатайте Q строк в общей сложности.
k-я строка должна содержать ответ на k-й запрос в виде целого числа.

Ограничения

- Все входные значения — целые числа.
- 1 \le N,Q \le 2 \times 10^5
- 0 \le A_i \le 10^9
- 1 \le i_k \le N
- 0 \le x_k \le 10^9

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

8 5
2 0 2 2 1 1 2 5
4 3
4 4
6 3
8 1000000000
2 1

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

4
3
6
5
0

Изначально последовательность A равна (2,0,2,2,1,1,2,5).
Этот набор входных данных содержит пять запросов.

- Первый запрос изменяет A_4 на 3, превращая A в (2,0,2,3,1,1,2,5).
- В этот момент \rm{mex} последовательности A равен 4.

- Второй запрос изменяет A_4 на 4, превращая A в (2,0,2,4,1,1,2,5).
- В этот момент \rm{mex} последовательности A равен 3.

- Третий запрос изменяет A_6 на 3, превращая A в (2,0,2,4,1,3,2,5).
- В этот момент \rm{mex} последовательности A равен 6.

- Четвертый запрос изменяет A_8 на 1000000000, превращая A в (2,0,2,4,1,3,2,1000000000).
- В этот момент \rm{mex} последовательности A равен 5.

- Пятый запрос изменяет A_2 на 1, превращая A в (2,1,2,4,1,3,2,1000000000).
- В этот момент \rm{mex} последовательности A равен 0.

Вам дана последовательность A=(A_1,A_2,\dots,A_N) длины N.
Ответьте на следующие Q-запросы в том порядке, в котором они заданы.
k-й запрос задаётся в следующем формате:
i_k x_k

- Сначала измените A_{i_k} to x_k. Это изменение будет перенесено на последующие запросы.
- Затем выведите \rm{mex} of A.
- \rm{mex} A это наименьшее неотрицательное целое число, не содержащееся в A.

Ввод

Вводные данные передаются из стандартного ввода в следующем формате:
N Q
A_1 A_2 \dots A_N
i_1 x_1
i_2 x_2
\vdots
i_Q x_Q

Вывод

Выведите всего Q строк.
В k-й строке должен быть указан ответ на k-й запрос в виде целого числа.

Ограничения

- Все вводные значения являются целыми числами.
- 1 \le N,Q \le 2 \times 10^5
- 0 \le A_i \le 10^9
- 1 \le i_k \le N
- 0 \le x_k \le 10^9

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

8 5
2 0 2 2 1 1 2 5
4 3
4 4
6 3
8 1000000000
2 1

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

4
3
6
5
0

Первоначально последовательность A равна (2,0,2,2,1,1,2,5).
Этот ввод дает вам пять запросов.

- Первый запрос изменяет A_4 на 3, делая A=(2,0,2,3,1,1,2,5).
- На данный момент \rm{mex} A равен 4.

- Второй запрос изменяет A_4 на 4, делая A=(2,0,2,4,1,1,2,5).
- На данный момент \rm{mex} A равен 3.

- Третий запрос изменяет A_6 на 3, делая A=(2,0,2,4,1,3,2,5).
- На данный момент \rm{mex} A равен 6.

- Четвертый запрос изменяет A_8 на 1000000000, делая A=(2,0,2,4,1,3,2,1000000000).
- На данный момент \rm{mex} A равен 5.

- Пятый запрос изменяет A_2 на 1, делая A=(2,1,2,4,1,3,2,1000000000).
- В этот момент \rm{mex} A равен 0.

Вам дана последовательность A=(A_1,A_2,\dots,A_N) длины N.
Отвечайте на следующие Q запросов в порядке их поступления.
k-й запрос дан в следующем формате:
i_k x_k

- Сначала измените A_{i_k} на x_k. Это изменение будет сохраняться в последующих запросах.
- Затем напечатайте \rm{mex} последовательности A.
- \rm{mex} последовательности A — это наименьшее неотрицательное целое число, отсутствующее в A.

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

Входные данные подаются через стандартный ввод в следующем формате:
N Q
A_1 A_2 \dots A_N
i_1 x_1
i_2 x_2
\vdots
i_Q x_Q

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

Напечатайте Q строк в общей сложности.
k-я строка должна содержать ответ на k-й запрос в виде целого числа.

Ограничения

- Все входные значения — целые числа.
- 1 \le N,Q \le 2 \times 10^5
- 0 \le A_i \le 10^9
- 1 \le i_k \le N
- 0 \le x_k \le 10^9

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

8 5
2 0 2 2 1 1 2 5
4 3
4 4
6 3
8 1000000000
2 1

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

4
3
6
5
0

IИзначально последовательность A равна (2,0,2,2,1,1,2,5).
Этот набор входных данных содержит пять запросов.

- Первый запрос изменяет A_4 на 3, превращая A в (2,0,2,3,1,1,2,5).
- В этот момент \rm{mex} последовательности A равен 4.

- Второй запрос изменяет A_4 на 4, превращая A в (2,0,2,4,1,1,2,5).
- В этот момент \rm{mex} последовательности A равен 3.

- Третий запрос изменяет A_6 на 3, превращая A в (2,0,2,4,1,3,2,5).
- В этот момент \rm{mex} последовательности A равен 6.

- Четвертый запрос изменяет A_8 на 1000000000, превращая A в (2,0,2,4,1,3,2,1000000000).
- В этот момент \rm{mex} последовательности A равен 5.

- Пятый запрос изменяет A_2 на 1, превращая A в (2,1,2,4,1,3,2,1000000000).
- В этот момент \rm{mex} последовательности A равен 0.