Команда Такахаши и команда Аоки сыграли N матчей.
В i-м матче (1\leq i\leq N) команда Такахаши набрала X _ i очков, а команда Аоки набрала Y _ i очков.
Побеждает команда с более высоким общим счетом в N матчах.
Выведите победителя.
Если у двух команд одинаковый общий счет, это ничья.

Ввод

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

Вывод

Если выигрывает команда Такахаши, выведите Takahashi; если выигрывает команда Аоки, выведите Aoki; если ничья, выведите Draw.

Ограничения

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

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

4
10 2
10 1
10 2
3 2

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

Такахаши

В четырех матчах команда Такахаши набрала 33 очка, а команда Аоки набрала 7 очков.
Побеждает команда Такахаши, поэтому выведите Такахаши.

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

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

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

Ничья

Обе команды набрали 22 очка.
Это ничья, поэтому выведите Ничья.

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

4
0 0
10 10
50 50
0 100

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

Аоки

Одна или обе команды могут не набрать очков в матче.

Команда Такахаши и команда Аоки сыграли N матчей.
В i-м матче (1\leq i\leq N), Команда Такахаши набрала X _ i очков, а Команда Аоки Y _ i очков.
Побеждает команда, набравшая большее количество очков в N матчах.
Выведите победителя.
Если обе команды имеют одинаковое общее количество очков, это ничья.

Ввод

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

Вывод

Если команда Такахаши выиграет, выведите Такахаши; если команда Аоки выиграет, выведите Aoki; если это ничья, выведите Draw.

Ограничения

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

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

4
10 2
10 1
10 2
3 2

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

Takahashi

В четырёх матчах команда Такахаши набрала 33 очка, а команда Аоки 7 очков.
Команда Такахаши побеждает, поэтому выведите Такахаши.

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

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

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

Draw

Обе команды набрали по 22 очка.
Это ничья, поэтому выведите Draw.

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

4
0 0
10 10
50 50
0 100

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

Aoki

Одна или обе команды могут не набрать очков в матче.

Команда Такэхаси и команда Аоки сыграли \( N \) матчей.
В \( i \)-м матче (\( 1\leq i\leq N \)), команда Такэхаси набрала \( X_i \) очков, а команда Аоки набрала \( Y_i \) очков.
Команда с большим общим счетом за \( N \) матчей выигрывает.
Выведите победителя.
Если у двух команд одинаковый общий счет, это ничья.

Ввод

Ввод задается из стандартного ввода в следующем формате:
\( N \)
\( X_1 \ Y_1 \)
\( X_2 \ Y_2 \)
\(\vdots\)
\( X_N \ Y_N \)

Вывод

Если победила команда Такэхаси, выведите Takahashi; если победила команда Аоки, выведите Aoki; если это ничья, выведите Draw.

Ограничения

- \( 1\leq N\leq 100 \)
- \( 0\leq X_i\leq 100\ (1\leq i\leq N) \)
- \( 0\leq Y_i\leq 100\ (1\leq i\leq N) \)
- Все входные значения — целые числа.

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

4
10 2
10 1
10 2
3 2

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

Takahashi

В четырех матчах команда Такэхаси набрала 33 очка, а команда Аоки набрала 7 очков.
Команда Такэхаси выигрывает, поэтому выведите Takahashi.

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

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

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

Draw

Обе команды набрали 22 очка.
Это ничья, поэтому выведите Draw.

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

4
0 0
10 10
50 50
0 100

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

Aoki

Одна или обе команды могут не набрать очков в матче.


Мы определяем расширенные A строки, расширенные B строки, расширенные C строки и расширенные ABC строки следующим образом:

- Строка S является расширенной A строкой, если все символы в S — A.
- Строка S является расширенной B строкой, если все символы в S — B.
- Строка S является расширенной C строкой, если все символы в S — C.
- Строка S является расширенной ABC строкой, если существует расширенная A строка S_A, расширенная B строка S_B и расширенная C строка S_C, такие, что строка, полученная путем объединения S_A, S_B, S_C в этом порядке, равна S.

Например, ABC, A и AAABBBCCCCCCC являются расширенными ABC строками, но ABBAAAC и BBBCCCCCCCAAA не являются.
Обратите внимание, что пустая строка является расширенной A строкой, расширенной B строкой и расширенной C строкой.
Вам дана строка S, состоящая из A, B и C.
Если S является расширенной ABC строкой, выведите Yes; в противном случае выведите No.

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

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

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

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

Ограничения

- S — строка, состоящая из A, B и C.
- 1\leq|S|\leq 100 (|S| — длина строки S.)

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

AAABBBCCCCCCC

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

Yes

AAABBBCCCCCCC является расширенной ABC строкой, потому что это объединение расширенной A строки длины 3, AAA, расширенной B строки длины 3, BBB, и расширенной C строки длины 7, CCCCCCC, в этом порядке.
Таким образом, выведите Yes.

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

ACABABCBC

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

No

Не существует тройки расширенной A строки S_A, расширенной B строки S_B и расширенной C строки S_C, такой, что строка, полученная путем объединения S_A, S_B и S_C в этом порядке, равна ACABABCBC.
Поэтому выведите No.

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

A

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

Yes

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

ABBBBBBBBBBBBBCCCCCC

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

Yes

Мы определяем строки Extended A, Extended B, Extended C и Extended ABC следующим образом:

- Строка S является строкой Extended A, если все символы в S являются A.
- Строка S является строкой Extended B, если все символы в S являются B.
- Строка S является строкой Extended C, если все символы в S являются C.
- Строка S является строкой Extended ABC, если существует строка Extended A S_A, строка Extended B S_B и строка Extended C S_C, такие, что строка, полученная путем конкатенации S_A, S_B, S_C в этом порядке, равна S.

Например, ABC, A и AAABBBCCCCCCC являются строками Extended ABC, но ABBAAAC и BBBCCCCCCCAAA таковыми не являются.
Обратите внимание, что пустая строка считается строкой Extended A, строкой Extended B и строкой Extended C.
Вам дана строка S, состоящая из A, B и C.
Если S — это строка Extended ABC, выведите Yes; в противном случае выведите No.

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

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

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

Если S — это расширенная строка ABC, выведите Yes; в противном случае выведите No.

Ограничения

- S — это строка, состоящая из A, B и C.
- 1\leq|S|\leq 100 (|S| — это длина строки S.)

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

AAABBBCCCCCCC

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

Yes

AAABBBCCCCCCC — это строка Extended ABC, поскольку она представляет собой конкатенацию расширенной строки A длиной 3, AAA, расширенной строки B длиной 3, BBB и расширенной строки C длиной 7, CCCCCCC, в этом порядке.
Таким образом, выведите Yes.

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

ACABABCBC

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

No

Не существует тройки из расширенной строки A S_A, расширенной строки B S_B и расширенной строки C S_C, такой, что строка, полученная путем конкатенации S_A, S_B и S_C в этом порядке, равна ACABABCBC.
Поэтому выведите Нет.

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

A

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

Yes

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

ABBBBBBBBBBBBBCCCCCC

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

Yes


В очереди стоят N человек: человек 1, человек 2, \ldots, человек N.
Дано расположение людей в виде последовательности A=(A _ 1,A _ 2,\ldots,A _ N) длиной N.
A _ i\ (1\leq i\leq N) представляет следующую информацию:

- если A _ i=-1, человек i стоит в начале очереди;
- если A _ i\neq -1, человек i стоит сразу за человеком A _ i.

Выведи номера людей в очереди от начала до конца.

Ввод

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

Вывод

Если человек s _ 1, человек s _ 2, \ldots, человек s _ N стоят в этой последовательности, выведи s _ 1, s _ 2, \ldots, и s _ N в этом порядке, разделяя их пробелами.

Ограничения

- 1\leq N\leq3\times10 ^ 5
- A _ i=-1 или 1\leq A _ i\leq N\ (1\leq i\leq N)
- Существует только один способ упорядочить N человек в соответствии с данной информацией.
- Все входные значения являются целыми числами.

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

6
4 1 -1 5 3 2

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

3 5 4 1 2 6

Если человек 3, человек 5, человек 4, человек 1, человек 2 и человек 6 стоят в очереди в этом порядке, расположение соответствует данной информации.
Так, можно увидеть, что:

- человек 1 стоит сразу за человеком 4,
- человек 2 стоит сразу за человеком 1,
- человек 3 стоит в начале очереди,
- человек 4 стоит сразу за человеком 5,
- человек 5 стоит сразу за человеком 3,
- человек 6 стоит сразу за человеком 2.

Таким образом, выведи 3, 5, 4, 1, 2 и 6 в этом порядке, разделяя их пробелами.

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

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

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

1 2 3 4 5 6 7 8 9 10

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

30
3 25 20 6 18 12 26 1 29 -1 21 17 23 9 8 30 10 15 22 27 4 13 5 11 16 24 28 2 19 7

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

10 17 12 6 4 21 11 24 26 7 30 16 25 2 28 27 20 3 1 8 15 18 5 23 13 22 19 29 9 14

В очереди стоят N человек: person 1, person 2, \ldots, person N.
Вам дано расположение людей в виде последовательности A=(A _ 1,A _ 2,\ldots,A _ N) of length N.
A _ i\ (1\leq i\leq N) представляет следующую информацию:

- если A _ i=-1, человек i стоит в начале очереди;
- если A _ i\neq -1, человек i находится сразу за человеком A _ i.

Выведите номера людей в строке спереди назад.

Ввод

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

Вывод

Если человек s _ 1, person s _ 2, \ldots, person s _ N стоят в очереди в таком порядке, выведите s _ 1, s _ 2, \ldots, and s _ N в этом порядке, через пробел.

Ограничения

- 1\leq N\leq3\times10 ^ 5
- A _ i=-1 или 1\leq A _ i\leq N\ (1\leq i\leq N)
- Существует ровно один способ расположить N людей в соответствии с предоставленной информацией.
- Все входные значения являются целыми числами.

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

6
4 1 -1 5 3 2

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

3 5 4 1 2 6

Если человек 3, человек 5, человек 4, человек 1, человек 2, и человек 6 стоят в очереди в этом порядке спереди назад, расположение соответствует данной информации.
Действительно, видно, что:

- человек 1 стоит сразу за человеком 4,
- человек 2 стоит сразу за человеком 1,
- человек 3 стоит в начале очереди,
- человек 4 стоит сразу за человеком 5,
- человек 5 стоит сразу за человеком 3, и
- человек 6 стоит сразу за человеком 2.

Таким образом, выведите 3, 5, 4, 1, 2, и 6 в этом порядке, разделяя их пробелами.

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

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

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

1 2 3 4 5 6 7 8 9 10

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

30
3 25 20 6 18 12 26 1 29 -1 21 17 23 9 8 30 10 15 22 27 4 13 5 11 16 24 28 2 19 7

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

10 17 12 6 4 21 11 24 26 7 30 16 25 2 28 27 20 3 1 8 15 18 5 23 13 22 19 29 9 14

В очереди стоят N человек: человек 1, человек 2, \ldots, человек N.
Вам дана последовательность людей как последовательность A=(A _ 1,A _ 2,\ldots,A _ N) длины N.
A _ i\ (1\leq i\leq N) представляет следующую информацию:

- если A _ i=-1, человек i стоит в начале очереди;
- если A _ i\neq -1, человек i стоит сразу за человеком A _ i.

Выведите номера людей в очереди от начала до конца.

Ввод

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

Вывод

Если человек s _ 1, человек s _ 2, \ldots, человек s _ N стоят в этой последовательности, выведите s _ 1, s _ 2, \ldots, и s _ N в этом порядке, разделенные пробелами.

Ограничения

- 1\leq N\leq3\times10 ^ 5
- A _ i=-1 или 1\leq A _ i\leq N\ (1\leq i\leq N)
- Существует ровно один способ упорядочить N человек в соответствии с данной информацией.
- Все входные значения являются целыми числами.

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

6
4 1 -1 5 3 2

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

3 5 4 1 2 6

Если человек 3, человек 5, человек 4, человек 1, человек 2 и человек 6 стоят в очереди в этом порядке от начала до конца, расположение соответствует данной информации.
Действительно, видно, что:

- человек 1 стоит сразу за человеком 4,
- человек 2 стоит сразу за человеком 1,
- человек 3 стоит в начале очереди,
- человек 4 стоит сразу за человеком 5,
- человек 5 стоит сразу за человеком 3, и
- человек 6 стоит сразу за человеком 2.

Таким образом, выведите 3, 5, 4, 1, 2 и 6 в этом порядке, разделенные пробелами.

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

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

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

1 2 3 4 5 6 7 8 9 10

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

30
3 25 20 6 18 12 26 1 29 -1 21 17 23 9 8 30 10 15 22 27 4 13 5 11 16 24 28 2 19 7

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

10 17 12 6 4 21 11 24 26 7 30 16 25 2 28 27 20 3 1 8 15 18 5 23 13 22 19 29 9 14


Дана сетка с H строками и W столбцами. Пусть (i, j) обозначает ячейку в i-й строке сверху и j-й столбец слева.
Каждая ячейка содержит один из символов o, x и .. Символы, записанные в каждой ячейке, представлены H строками S_1, S_2, \ldots, S_H длины W; символ, записанный в ячейке (i, j), - это j-й символ строки S_i.
Для этой сетки вы можете повторять следующую операцию любое количество раз, возможно, ни разу:

- Выберите одну ячейку с символом . и измените символ в этой ячейке на o.

Определите, возможно ли иметь последовательность из K горизонтально или вертикально последовательных ячеек, в которых во всех ячейках записано o (иначе говоря, удовлетворить хотя бы одно из следующих двух условий). Если это возможно, выведите минимальное количество операций, необходимых для достижения этого.

- Существует пара целых чисел (i, j), удовлетворяющая 1 \leq i \leq H и 1 \leq j \leq W-K+1 такая, что символы в ячейках (i, j), (i, j+1), \ldots, (i, j+K-1) все равны o.
- Существует пара целых чисел (i, j), удовлетворяющая 1 \leq i \leq H-K+1 и 1 \leq j \leq W такая, что символы в ячейках (i, j), (i+1, j), \ldots, (i+K-1, j) все равны o.

Ввод

Ввод передается стандартным вводом в следующем формате:
H W K
S_1
S_2
\vdots
S_H

Вывод

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

Ограничения

- H, W и K — целые числа.
- 1 \leq H
- 1 \leq W
- H \times W \leq 2 \times 10^5
- 1 \leq K \leq \max\lbrace H, W \rbrace
- S_i — строка длины W, состоящая из символов o, x и ..

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

3 4 3
xo.x
..o.
xx.o

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

2

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

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

4 2 3
.o
.o
.o
.o

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

0

Условие удовлетворено без выполнения операций.

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

3 3 3
x..
..x
.x.

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

-1

Невозможно удовлетворить условие, поэтому выведите -1.

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

10 12 6
......xo.o..
x...x.....o.
x...........
..o...x.....
.....oo.....
o.........x.
ox.oox.xx..x
....o...oox.
..o.....x.x.
...o........

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

3

Есть сетка с H строками и W столбцами. Пусть (i, j) обозначает ячейку в i-й строке сверху и j-м столбце слева.
Каждая ячейка содержит один из символов o, x и .. Символы, записанные в каждой ячейке, представлены H строками S_1, S_2, \ldots, S_H длины W; символ, записанный в ячейке (i, j), является j-м символом строки S_i.
Для этой сетки вы можете повторить следующую операцию любое количество раз, возможно, ноль:

- Выберите одну ячейку с символом . и измените символ в этой ячейке на o.

Определите, возможно ли иметь последовательность из K горизонтально или вертикально последовательных ячеек с o, записанным во всех ячейках (другими словами, выполнить хотя бы одно из следующих двух условий). Если это возможно, выведите минимальное количество операций, необходимых для достижения этого.

- Существует целочисленная пара (i, j), удовлетворяющая 1 \leq i \leq H и 1 \leq j \leq W-K+1, такая, что символы в ячейках (i, j), (i, j+1), \ldots, (i, j+K-1) все являются o.

Ввод

Ввод дается из стандартного ввода в следующем формате:
H W K
S_1
S_2
\vdots
S_H

Вывод

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

Ограничения

- H, W и K являются целыми числами.
- 1 \leq H
- 1 \leq W
- H \times W \leq 2 \times 10^5
- 1 \leq K \leq \max\lbrace H, W \rbrace
- S_i — это строка длины W, состоящая из символов o, x и ..

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

3 4 3
xo.x
..o.
xx.o

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

2

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

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

4 2 3
.o
.o
.o
.o

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

0
Условие удовлетворяется без выполнения каких-либо операций.

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

3 3 3
x..
..x
.x.

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

-1

Невозможно удовлетворить условию, поэтому выведите -1.

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

10 12 6
......xo.o..
x...x.....o.
x...........
..o...x.....
.....oo.....
o.........x.
ox.oox.xx..x
....o...oox.
..o.....x.x.
...o........

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

3

Дана сетка с H строками и W столбцами. Пусть (i, j) обозначает ячейку в i-й строке сверху и j-м столбце слева.
Каждая ячейка содержит один из символов o, x и .. Символы, записанные в каждой ячейке, представлены H строками S_1, S_2, \ldots, S_H длиной W; символ, записанный в ячейке (i, j), — j-й символ строки S_i.
Для этой сетки можно повторять следующую операцию любое количество раз, а возможно, ни разу:

- Выбери одну ячейку с символом . и измени символ в этой ячейке на o.

Определи, возможна ли последовательность из K горизонтально или вертикально последовательных ячеек, где во всех ячейках записано o (иначе говоря, удовлетворено хотя бы одно из следующих двух условий). Если это возможно, выведи минимальное количество операций, необходимых для достижения этого.

- Существует пара целых чисел (i, j), удовлетворяющая 1 \leq i \leq H и 1 \leq j \leq W-K+1, где все символы в ячейках (i, j), (i, j+1), \ldots, (i, j+K-1) равны o.
- Существует пара целых чисел (i, j), удовлетворяющая 1 \leq i \leq H-K+1 и 1 \leq j \leq W, где все символы в ячейках (i, j), (i+1, j), \ldots, (i+K-1, j) равны o.

Ввод

Ввод осуществляется посредством стандартного ввода в следующем формате:
H W K
S_1
S_2
\vdots
S_H

Вывод

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

Ограничения

- H, W и K — целые числа.
- 1 \leq H
- 1 \leq W
- H \times W \leq 2 \times 10^5
- 1 \leq K \leq \max\lbrace H, W \rbrace
- S_i — строка длиной W, состоящая из символов o, x и ..

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

3 4 3
xo.x
..o.
xx.o

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

2

Проведя операцию дважды, например, изменив символы в ячейках (2, 1) и (2, 2) на o, можно удовлетворить условию задачи. Это минимальное количество необходимых операций.

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

4 2 3
.o
.o
.o
.o

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

0

Условие удовлетворено без выполнения операций.

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

3 3 3
x..
..x
.x.

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

-1

Невозможно удовлетворить условию, поэтому выведи -1.

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

10 12 6
......xo.o..
x...x.....o.
x...........
..o...x.....
.....oo.....
o.........x.
ox.oox.xx..x
....o...oox.
..o.....x.x.
...o........

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

3


Это интерактивная задача (тип задачи, в которой ваша программа взаимодействует с программой-судьей через стандартный ввод и вывод).
Имеется N бутылок сока, пронумерованных от 1 до N. Было обнаружено, что ровно одна из этих бутылок испортилась. Даже небольшой глоток испорченного сока вызовет расстройство желудка на следующий день.
Такахаши должен определить испорченный сок на следующий день. Для этого он решает позвонить минимально необходимому количеству друзей и подать им некоторые из N бутылок сока. Он может дать любое количество бутылок каждому другу, и каждую бутылку сока можно подарить любому количеству друзей.
Выведите количество друзей, которым нужно позвонить, и способ распределения сока, затем получите информацию о том, будет ли у каждого друга расстройство желудка на следующий день, и выведите номер испорченной бутылки.

Ввод/вывод

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

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

Далее вы должны выполнить следующую процедуру для вывода M выходных данных.
Для i = 1, 2, \ldots, M i-й вывод должен содержать количество K_i бутылок сока, которые вы подадите i-му другу, и номера K_i бутылок в порядке возрастания, A_{i, 1}, A_{i, 2}, \ldots, A_{i, K_i}, разделенные пробелами, за которыми следует новая строка.
K_i A_{i, 1} A_{i, 2} \ldots A_{i, K_i}

Затем судья сообщит вам, есть ли у каждого друга расстройство желудка на следующий день, предоставив вам строку S длины M, состоящую из 0 и 1.
S

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

Затем немедленно завершите программу.
Если выведенное вами M является минимально необходимым количеством друзей для определения испорченного сока из N бутылок, а выведенный вами X' совпадает с номером испорченной бутылки X, то ваша программа считается правильной.

Ввод/вывод

Это интерактивная задача (тип задачи, в которой ваша программа взаимодействует с программой судьи через стандартный ввод и вывод).
Перед взаимодействием судья тайно выбирает целое число X от 1 до N в качестве номера испорченной бутылки. Значение X вам не сообщается. Кроме того, значение X может меняться во время взаимодействия, если оно соответствует ограничениям и предыдущим выводам.
Сначала судья предоставит вам N в качестве входных данных.
N

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

Далее вы должны выполнить следующую процедуру для вывода M выходных данных.
Для i = 1, 2, \ldots, M i-й вывод должен содержать количество K_i бутылок сока, которые вы подадите i-му другу, и номера K_i бутылок в порядке возрастания, A_{i, 1}, A_{i, 2}, \ldots, A_{i, K_i}, разделенные пробелами, за которыми следует новая строка.
K_i A_{i, 1} A_{i, 2} \ldots A_{i, K_i}

Затем судья сообщит вам, есть ли у каждого друга расстройство желудка на следующий день, предоставив вам строку S длины M, состоящую из 0 и 1.
S

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

Затем немедленно завершите программу.
Если выведенное вами M является минимально необходимым количеством друзей для определения испорченного сока из N бутылок, а выведенный вами X' совпадает с номером испорченной бутылки X, то ваша программа считается правильной.

Ограничения

- N является целым числом.
- 2 \leq N \leq 100

Это интерактивная задача (тип задачи, в которой ваша программа взаимодействует с проверяющей программой через стандартные входные и выходные данные).
Всего N бутылок сока, пронумерованных от 1 до N. Было обнаружено, что именно одна из этих бутылок испортилась. Даже маленький глоток испорченного сока вызовет расстройство желудка на следующий день.
Такахаси должен определить испорченный сок к следующему дню. Для этого он решает позвать минимально необходимое количество друзей и подать им несколько из N бутылок сока. Он может подарить любое количество бутылок каждому другу, а каждую бутылку сока можно подарить любому количеству друзей.
Выведите количество друзей, которым нужно позвонить, и как раздать сок, затем получите информацию о том, будет ли у каждого друга расстройство желудка на следующий день, и распечатайте номер испорченной бутылки.

Input/Output

This is an interactive problem (a type of problem where your program interacts with the judge program through Standard Input and Output).
Before the interaction, the judge secretly selects an integer X between 1 and N as the spoiled bottle's number. The value of X is not given to you. Also, the value of X may change during the interaction as long as it is consistent with the constraints and previous outputs.
First, the judge will give you N as input.
N

You should print the number of friends to call, M, followed by a newline.
M

Next, you should perform the following procedure to print M outputs.
For i = 1, 2, \ldots, M, the i-th output should contain the number K_i of bottles of juice you will serve to the i-th friend, and the K_i bottles' numbers in ascending order, A_{i, 1}, A_{i, 2}, \ldots, A_{i, K_i}, separated by spaces, followed by a newline.
K_i A_{i, 1} A_{i, 2} \ldots A_{i, K_i}

Then, the judge will inform you whether each friend has a stomach upset the next day by giving you a string S of length M consisting of 0 and 1.
S

For i = 1, 2, \ldots, M, the i-th friend has a stomach upset if and only if the i-th character of S is 1.
You should respond by printing the number of the spoiled juice bottle X', followed by a newline.
X'

Then, terminate the program immediately.
If the M you printed is the minimum necessary number of friends to identify the spoiled juice out of the N bottles, and the X' you printed matches the spoiled bottle's number X, then your program is considered correct.

Input/Output

This is an interactive problem (a type of problem where your program interacts with the judge program through Standard Input and Output).
Before the interaction, the judge secretly selects an integer X between 1 and N as the spoiled bottle's number. The value of X is not given to you. Also, the value of X may change during the interaction as long as it is consistent with the constraints and previous outputs.
First, the judge will give you N as input.
N

You should print the number of friends to call, M, followed by a newline.
M

Next, you should perform the following procedure to print M outputs.
For i = 1, 2, \ldots, M, the i-th output should contain the number K_i of bottles of juice you will serve to the i-th friend, and the K_i bottles' numbers in ascending order, A_{i, 1}, A_{i, 2}, \ldots, A_{i, K_i}, separated by spaces, followed by a newline.
K_i A_{i, 1} A_{i, 2} \ldots A_{i, K_i}

Then, the judge will inform you whether each friend has a stomach upset the next day by giving you a string S of length M consisting of 0 and 1.
S

For i = 1, 2, \ldots, M, the i-th friend has a stomach upset if and only if the i-th character of S is 1.
You should respond by printing the number of the spoiled juice bottle X', followed by a newline.
X'

Then, terminate the program immediately.
If the M you printed is the minimum necessary number of friends to identify the spoiled juice out of the N bottles, and the X' you printed matches the spoiled bottle's number X, then your program is considered correct.

Constraints

- N is an integer.
- 2 \leq N \leq 100

Это интерактивная задача (тип задачи, где программа взаимодействует с программой-экзаменатором через стандартный ввод и вывод).
Дано N бутылок сока, пронумерованных от 1 до N. Было обнаружено, что одна из этих бутылок испорчена. Даже небольшой глоток испорченного сока вызовет расстройство желудка на следующий день.
Такахаси должен определить испорченный сок до завтрашнего дня. Для этого он решает позвать минимально необходимое количество друзей и угостить их некоторыми из N бутылок сока. Он может дать любому другу любое количество бутылок, и каждая бутылка сока может быть предложена любому количеству друзей.
Выведи количество друзей, которых нужно позвать, и как распределить сок, затем получи информацию о том, у кого из друзей будет расстройство желудка на следующий день, и выведи номер испорченной бутылки.

Ввод/Вывод

Это интерактивная задача (тип задачи, где программа взаимодействует с программой-экзаменатором через стандартный ввод и вывод).
Перед взаимодействием экзаменатор тайно выбирает целое число X между 1 и N в качестве номера испорченной бутылки. Значение X не известно. Также значение X может изменяться во время взаимодействия, если оно соответствует ограничениям и предыдущим выводам.
Сначала экзаменатор дает N в качестве ввода.
N

Необходимо вывести количество друзей (М), которых нужно позвать, за которым следует новая строка.
M

Далее необходимо выполнить следующую процедуру для вывода M строк.
Для i = 1, 2, \ldots, M i-я строка должна содержать количество бутылок сока K_i, которые вы подадите i-му другу, и номера K_i бутылок в возрастающем порядке, A_{i, 1}, A_{i, 2}, \ldots, A_{i, K_i}, разделенные пробелами, за которыми следует новая строка.
K_i A_{i, 1} A_{i, 2} \ldots A_{i, K_i}

Затем экзаменатор сообщит, у кого из друзей на следующий день будет расстройство желудка, предоставив строку S длиной M, состоящую из 0 и 1.
S

Для i = 1, 2, \ldots, M у i-го друга расстройство желудка тогда и только тогда, когда i-й символ S равен 1.
Необходимо вывести номер испорченной бутылки сока X', за которым следует новая строка.
X'

Затем немедленно завершите программу.
Если выведенная M является минимально необходимым количеством друзей для выявления испорченного сока из N бутылок, а выведенный X' совпадает с номером испорченной бутылки X, то программа считается верной.

Ограничения

- N – это целое число.
- 2 \leq N \leq 100


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

- Первый символ S является заглавной буквой, а все остальные символы — строчными.

Ввод

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

Вывод

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

Ограничения

- 1 \leq |S| \leq 100 (|S| — длина строки S.)
- Каждый символ S — это заглавная или строчная буква английского алфавита.

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

Capitalized

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

Yes

Первый символ C в Capitalized — заглавная буква, и все остальные символы apitalized — строчные, поэтому нужно вывести Yes.

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

AtCoder

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

No

AtCoder содержит заглавную букву C, которая не находится в начале, поэтому нужно вывести No.

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

yes

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

No

Первый символ y в yes не является заглавной буквой, поэтому нужно вывести No.

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

A

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

Yes

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

- Первый символ S является заглавной буквой, а все остальные символы — строчными.

Ввод

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

Вывод

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

Ограничения

- 1 \leq |S| \leq 100 (|S| is the length of the string S.)
- Каждый символ S — это заглавная или строчная буква английского алфавита.

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

Capitalized

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

Yes

Первый символ C в Capitalized — заглавная буква, и все остальные символы apitalized — строчные, поэтому нужно вывести Yes.

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

AtCoder

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

No

AtCoder содержит заглавную букву C, которая не находится в начале, поэтому нужно вывести No.

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

yes

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

No

Первый символ y в yes не является заглавной буквой, поэтому нужно вывести No.

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

A

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

Yes

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

- Первый символ S это верхний регистр, все остальные символы строчные.

Input

The input is given from Standard Input in the following format:
S

Output

If the condition is satisfied, print Yes; otherwise, print No.

Constraints

- 1 \leq |S| \leq 100 (|S| is the length of the string S.)
- Each character of S is an uppercase or lowercase English letter.

Sample Input 1

Capitalized

Sample Output 1

Yes

The first character C of Capitalized is uppercase, and all other characters apitalized are lowercase, so you should print Yes.

Sample Input 2

AtCoder

Sample Output 2

No

AtCoder contains an uppercase letter C that is not at the beginning, so you should print No.

Sample Input 3

yes

Sample Output 3

No

The first character y of yes is not uppercase, so you should print No.

Sample Input 4

A

Sample Output 4

Yes


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

Ввод

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

Вывод

Среди символов, которые встречаются в S чаще всего, напечатайте тот, который идет первым в алфавитном порядке.

Ограничения

- 1 \leq |S| \leq 1000 (|S| — это длина строки S.)
- Каждый символ в S — это строчная буква английского алфавита.

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

frequency

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

e

В frequency буква e встречается дважды, что больше, чем любой другой символ, поэтому вы должны напечатать e.

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

atcoder

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

a

В atcoder каждая из букв a, t, c, o, d, e и r встречается один раз, поэтому вы должны напечатать первую по алфавиту, то есть a.

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

pseudopseudohypoparathyroidism

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

o

Вам дана строка S, состоящая из строчных английских букв. Найдите символ, который встречается в S чаще всего. Если таких символов несколько, выведите тот, который встречается раньше всех в алфавитном порядке.

Ввод

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

Вывод

Среди символов, которые встречаются в S чаще всего, выведите тот, который встречается раньше всех в алфавитном порядке.

Ограничения

- 1 \leq |S| \leq 1000 (|S| — длина строки S.)
- Каждый символ в S — это строчная английская буква.

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

частота

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

e

В частоте буква e встречается дважды, что больше, чем любой другой символ, поэтому следует вывести e.

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

atcoder

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

a

В atcoder каждая из букв a, t, c, o, d, e и r встречается один раз, поэтому следует вывести самую раннюю в алфавитном порядке, то есть a.

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

pseudopseudohypoparathyroidism

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

o

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

Input

The input is given from Standard Input in the following format:
S

Output

Among the characters that appear most frequently in S, print the one that comes earliest in alphabetical order.

Constraints

- 1 \leq |S| \leq 1000 (|S| is the length of the string S.)
- Each character in S is a lowercase English letter.

Sample Input 1

frequency

Sample Output 1

e

In frequency, the letter e appears twice, which is more than any other character, so you should print e.

Sample Input 2

atcoder

Sample Output 2

a

In atcoder, each of the letters a, t, c, o, d, e, and r appears once, so you should print the earliest in alphabetical order, which is a.

Sample Input 3

pseudopseudohypoparathyroidism

Sample Output 3

o


В вашем холодильнике есть N видов ингредиентов. Назовем их ингредиент 1, \dots, ингредиент N. У вас есть Q_i граммов ингредиента i.
Вы можете приготовить два типа блюд. Чтобы приготовить одну порцию блюда A, вам понадобится A_i граммов каждого ингредиента i (1 \leq i \leq N). Чтобы приготовить одну порцию блюда B, вам понадобится B_i граммов каждого ингредиента i. Вы можете приготовить только целое число порций каждого типа блюда.
Какое максимальное общее число порций блюд вы можете приготовить, используя только ингредиенты в холодильнике?

Ввод

Вводные данные даются из стандартного ввода в следующем формате:
N
Q_1 Q_2 \dots Q_N
A_1 A_2 \dots A_N
B_1 B_2 \dots B_N

Вывод

Предполагая, что вы можете приготовить максимальное количество порций блюд S, выведите целое число S.

Ограничения

- 1 \leq N \leq 10
- 1 \leq Q_i \leq 10^6
- 0 \leq A_i \leq 10^6
- Существует i, такое что A_i \geq 1.
- 0 \leq B_i \leq 10^6
- Существует i, такое что B_i \geq 1.
- Все входные значения являются целыми числами.

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

2
800 300
100 100
200 10

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

5

В этом холодильнике есть 800 граммов ингредиента 1 и 300 граммов ингредиента 2.
Вы можете приготовить одну порцию блюда A из 100 граммов ингредиента 1 и 100 граммов ингредиента 2, и одну порцию блюда B из 200 граммов ингредиента 1 и 10 граммов ингредиента 2.
Чтобы приготовить две порции блюда A и три порции блюда B, вам понадобится 100 \times 2 + 200 \times 3 = 800 граммов ингредиента 1 и 100 \times 2 + 10 \times 3 = 230 граммов ингредиента 2, ни один из которых не превышает количество, имеющееся в холодильнике. Таким образом, вы можете приготовить всего пять порций блюд, но нет возможности приготовить шесть, поэтому ответ — 5.

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

2
800 300
100 0
0 10

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

38

Вы можете приготовить 8 порций блюда A из 800 граммов ингредиента 1 и 30 порций блюда B из 300 граммов ингредиента 2, всего 38 порций.

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

2
800 300
801 300
800 301

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

0

Вы не можете приготовить ни одного блюда.

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

10
1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000
0 1 2 3 4 5 6 7 8 9
9 8 7 6 5 4 3 2 1 0

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

222222

Ваш холодильник содержит N видов ингредиентов. Назовем их ингредиент 1, \dots, ингредиент N. У вас есть Q_i грамм ингредиента i.
Вы можете приготовить два типа блюд. Чтобы приготовить одну порцию блюда A, вам нужно A_i грамм каждого ингредиента i (1 \leq i \leq N). Чтобы приготовить одну порцию блюда B, вам нужно B_i грамм каждого ингредиента i. Вы можете приготовить только целое число порций каждого типа блюда.
Используя только ингредиенты в холодильнике, какое максимальное общее количество порций блюд вы можете приготовить?

Ввод

Ввод предоставляется через стандартный ввод в следующем формат:
N
Q_1 Q_2 \dots Q_N
A_1 A_2 \dots A_N
B_1 B_2 \dots B_N

Вывод

Предполагая, что вы можете приготовить максимальное общее количество S порций блюд, напечатайте целое число S.

Ограничения

- 1 \leq N \leq 10
- 1 \leq Q_i \leq 10^6
- 0 \leq A_i \leq 10^6
- i такое, что A_i \geq 1.
- 0 \leq B_i \leq 10^6
- i такое, что B_i \geq 1.
- Все входные значения — целые числа.

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

2
800 300
100 100
200 10

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

5

В этом холодильнике есть 800 грамм ингредиента 1 и 300 грамм ингредиента 2.
Вы можете приготовить одну порцию блюда A, используя 100 грамм ингредиента 1 и 100 грамм ингредиента 2, и одну порцию блюда B, используя 200 грамм ингредиента 1 и 10 грамм ингредиента 2.
Чтобы приготовить две порции блюда A и три порции блюда B, вам нужно 100 \times 2 + 200 \times 3 = 800 грамм ингредиента 1 и 100 \times 2 + 10 \times 3 = 230 грамм ингредиента 2, ни одно из которых не превышает количество, доступное в холодильнике. Таким образом, вы можете приготовить в общей сложности пять порций блюд, но нет способа приготовить шесть, поэтому ответ 5.

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

2
800 300
100 0
0 10

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

38

Вы можете приготовить 8 порций блюда A, используя 800 грамм ингредиента 1, и 30 порций блюда B, используя 300 грамм ингредиента 2, итого 38 порций.

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

2
800 300
801 300
800 301

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

0

Вы не можете приготовить ни одного блюда.

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

10
1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000
0 1 2 3 4 5 6 7 8 9
9 8 7 6 5 4 3 2 1 0

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

222222

В вашем холодильнике есть N видов ингредиентов. Назовем их ингредиентом 1, \dots, ингредиентом N. У вас есть Q_i грамма ингредиента i.
Можно приготовить два вида блюд. Чтобы приготовить одну порцию блюда А, вам понадобится A_i грамм каждого ингредиента i (1 \leq i \leq N). Чтобы приготовить одну порцию блюда В, вам понадобится по B_i грамма каждого ингредиента i. Вы можете составить только целое число порций каждого типа блюда.
Используя только ингредиенты в холодильнике, какое максимальное общее количество порций блюд вы можете приготовить?

Ввод

Входные данные подаются из Стандартного ввода в следующем формате:
N
Q_1 Q_2 \dots Q_N
A_1 A_2 \dots A_N
B_1 B_2 \dots B_N

Выпуск

Предполагая, что вы можете приготовить максимум S порций блюд, выведите целое число S.

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

- 1 \leq N \leq 10
- 1 \leq Q_i \leq 10^6
- 0 \leq A_i \leq 10^6
- Существует i такой, что A_i \geq 1.
- 0 \leq B_i \leq 10^6
- Существует i такой, что B_i \geq 1.
- Все входные значения являются целыми числами.

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

2
800 300
100 100
200 10

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

5

В этом холодильнике 800 грамм ингредиента 1 и 300 граммов ингредиента 2.
Вы можете приготовить одну порцию блюда А со 100 граммами ингредиента 1 и 100 граммами ингредиента 2, а одну порцию блюда Б с 200 граммами ингредиента 1 и 10 граммами ингредиента 2.
Чтобы приготовить две порции блюда А и три порции блюда Б, вам нужно 100 \times 2 + 200 \times 3 = 800 грамм ингредиента 1, и 100 \times 2 + 10 \times 3 = 230 грамм ингредиента 2, ни один из которых не превышает количество, доступное в холодильнике. Таким образом, вы можете приготовить в общей сложности пять порций блюд, но нет возможности приготовить шесть, поэтому ответ — 5.

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

2
800 300
100 0
0 10

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

38

Вы можете приготовить 8 порций блюда А с 800 граммами ингредиента 1 и 30 порций блюда Б с 300 граммами ингредиента 2, всего 38 порций.

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

2
800 300
801 300
800 301

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

0

Вы не можете готовить никаких блюд.

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

10
1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000 1000000
0 1 2 3 4 5 6 7 8 9
9 8 7 6 5 4 3 2 1 0

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

222222


Архипелаг AtCoder состоит из N островов, соединенных N мостами.
Острова пронумерованы от 1 до N, и i-й мост (1\leq i\leq N-1) соединяет острова i и i+1 в обоих направлениях, а N-й мост соединяет острова N и 1 в обоих направлениях.
Путешествие между островами возможно только через мосты.
На островах регулярно проводится тур, начинающийся с острова X_1 и посещающий острова X_2, X_3, \dots, X_M в заданном порядке.
Тур может проходить через острова, не входящие в посещаемые, и общее количество пересечённых мостов во время тура определяется как его длина.
Более точно, тур — это последовательность из l+1 островов a_0, a_1, \dots, a_l, которая удовлетворяет всем следующим условиям, а его длина определяется как l:

- Для всех j\ (0\leq j\leq l-1), острова a_j и a_{j+1} непосредственно соединены мостом.
- Существуют такие 0 = y_1 < y_2 < \dots < y_M = l, что для всех k\ (1\leq k\leq M), a_{y_k} = X_k.

Из-за финансовых трудностей один мост будет закрыт, чтобы сократить расходы на обслуживание.
Определите минимально возможную длину тура, когда мост для закрытия выбран оптимально.

Ввод

Ввод предоставляется из стандартного ввода в следующем формате:
N M
X_1 X_2 \dots X_M

Вывод

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

Ограничения

- 3\leq N \leq 2\times 10^5
- 2\leq M \leq 2\times 10^5
- 1\leq X_k\leq N
- X_k\neq X_{k+1}\ (1\leq k\leq M-1)
- Все входные значения — целые числа.

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

3 3
1 3 2

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

2

- Если первый мост закрыт: Используя последовательность островов (a_0, a_1, a_2) = (1, 3, 2), можно посетить острова 1, 3, 2 по порядку, и тур длиной 2 может быть проведен. Более короткого тура нет.
- Если второй мост закрыт: Используя последовательность островов (a_0, a_1, a_2, a_3) = (1, 3, 1, 2), можно посетить острова 1, 3, 2 по порядку, и тур длиной 3 может быть проведен. Более короткого тура нет.
- Если третий мост закрыт: Используя последовательность островов (a_0, a_1, a_2, a_3) = (1, 2, 3, 2), можно посетить острова 1, 3, 2 по порядку, и тур длиной 3 может быть проведен. Более короткого тура нет.

Таким образом, минимально возможная длина тура при оптимальном выборе моста для закрытия — 2.
Следующая иллюстрация показывает, слева направо, случаи, когда закрыты мосты 1, 2, 3 соответственно. Кружки с числами представляют острова, линии, соединяющие кружки, представляют мосты, а синие стрелки представляют кратчайшие маршруты тура.

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

4 5
2 4 2 4 2

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

8

Тот же остров может появляться несколько раз в X_1, X_2, \dots, X_M.

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

163054 10
62874 19143 77750 111403 29327 56303 6659 18896 64175 26369

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

390009

Архипелаг AtCoder состоит из N островов, соединенных N мостами.
Острова пронумерованы от 1 до N, а i-й мост (1\leq i\leq N-1) соединяет острова i и i+1 в двух направлениях, а N-й мост соединяет острова N и 1 в двух направлениях.
Между островами нет другого способа путешествовать, кроме как пересекая мосты.
На островах регулярно проводится тур, который начинается с острова X_1 и посещает острова X_2, X_3, \dots, X_M по порядку.
Тур может проходить через острова, отличные от посещаемых, а общее количество пересечений мостов во время тура определяется как длина тура.
Точнее, тур — это последовательность из l+1 островов a_0, a_1, \dots, a_l, которая удовлетворяет всем следующим условиям, а ее длина определяется как l:

- Для всех j\ (0\leq j\leq l-1) острова a_j и a_{j+1} напрямую соединены мостом.
- Существуют некоторые 0 = y_1 < y_2 < \dots < y_M = l, такие, что для всех k\ (1\leq k\leq M) a_{y_k} = X_k.

Из-за финансовых трудностей острова закроют один мост, чтобы сократить расходы на обслуживание.
Определите минимально возможную длину тура, когда мост, который нужно закрыть, выбран оптимально.

Ввод

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

Вывод

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

Ограничения

- 3\leq N \leq 2\times 10^5
- 2\leq M \leq 2\times 10^5
- 1\leq X_k\leq N
- X_k\neq X_{k+1}\ (1\leq k\leq M-1)
- Все входные значения являются целыми числами.

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

3 3
1 3 2

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

2

- Если первый мост закрыт: взяв последовательность островов (a_0, a_1, a_2) = (1, 3, 2), можно посетить острова 1, 3, 2 по порядку, и можно провести тур длиной 2. Более короткого тура не существует.
- Если второй мост закрыт: взяв последовательность островов (a_0, a_1, a_2, a_3) = (1, 3, 1, 2), можно посетить острова 1, 3, 2 по порядку, и можно провести тур длиной 3. Более короткого тура не существует.

- Если третий мост закрыт: взяв последовательность островов (a_0, a_1, a_2, a_3) = (1, 2, 3, 2), можно посетить острова 1, 3, 2 по порядку, и можно провести тур длиной 3. Более короткого тура не существует.

Следовательно, минимально возможная длина тура, когда мост, который должен быть закрыт, выбран оптимально, составляет 2.
На следующем рисунке слева направо показаны случаи, когда мосты 1, 2, 3 закрыты соответственно. Круги с числами представляют острова, линии, соединяющие круги, представляют мосты, а синие стрелки представляют кратчайшие маршруты тура.

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

4 5
2 4 2 4 2

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

8

Один и тот же остров может встречаться несколько раз в X_1, X_2, \dots, X_M.

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

163054 10
62874 19143 77750 111403 29327 56303 6659 18896 64175 26369

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

390009


На окружности через равные интервалы размещены 2N точек, пронумерованных от 1 до 2N по часовой стрелке, начиная с определенной точки.
На окружности также есть N хорд, причем i-я хорда соединяет точки A_i и B_i.
Гарантируется, что все значения A_1,\dots,A_N,B_1,\dots,B_N различны.
Определите, есть ли пересечение между хордами.

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

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

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

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

Ограничения

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

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

3
1 3
4 2
5 6

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

Yes

Как показано на рисунке, хорда 1 (отрезок прямой, соединяющий точки 1 и 3) и хорда 2 (отрезок прямой, соединяющий точки 4 и 2) пересекаются, поэтому вывести Yes.

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

3
6 1
4 3
2 5

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

No

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

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

4
2 4
3 7
8 6
5 1

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

Yes

Существуют точки 2N на равном расстоянии на окружности, пронумерованные 1 до 2N по часовой стрелке, начиная с определенной точки.
На окружности расположено N хорд, причем i-th хорда соединяет точки A_i и B_i.
Достоверно известно, что все значения A_1,\dots,A_N,B_1,\dots,B_N являются отличными.
Определите, есть ли пересечение между хордами.

Input

The input is given from Standard Input in the following format:
N
A_1 B_1
A_2 B_2
\vdots
A_N B_N

Output

If there is an intersection between the chords, print Yes; otherwise, print No.

Constraints

- 2\leq N \leq 2\times 10^5
- 1\leq A_i,B_i \leq 2N
- A_1,\dots,A_N,B_1,\dots,B_N are all distinct
- All input values are integers

Sample Input 1

3
1 3
4 2
5 6

Sample Output 1

Yes

As shown in the figure, chord 1 (the line segment connecting points 1 and 3) and chord 2 (the line segment connecting points 4 and 2) intersect, so print Yes.

Sample Input 2

3
6 1
4 3
2 5

Sample Output 2

No

As shown in the figure, there is no intersection between the chords, so print No.

Sample Input 3

4
2 4
3 7
8 6
5 1

Sample Output 3

Yes


Дан взвешенный ориентированный простой граф с N вершинами и M рёбрами.
Вершины пронумерованы от 1 до N, i-е ребро имеет вес W_i и направлено от вершины U_i к вершине V_i.
Веса могут быть отрицательными, но граф не содержит отрицательных циклов.
Определите, существует ли путь, который посещает каждую вершину хотя бы раз. Если такой путь существует, найдите минимальный общий вес пройденных рёбер.
Если одно и то же ребро проходит несколько раз, его вес учитывается в каждом прохождении.
Здесь "путь, который посещает каждую вершину хотя бы раз" — это последовательность вершин v_1,v_2,\dots,v_k, которая удовлетворяет обоим следующим условиям:

- Для каждого i (1\leq i\leq k-1) существует ребро, которое ведёт из вершины v_i в вершину v_{i+1}.
- Для каждого j\ (1\leq j\leq N) существует i (1\leq i\leq k) такое, что v_i=j.

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

Входные данные подаются через стандартный ввод в следующем формате:
N M
U_1 V_1 W_1
U_2 V_2 W_2
\vdots
U_M V_M W_M

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

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

Ограничения

- 2\leq N \leq 20
- 1\leq M \leq N(N-1)
- 1\leq U_i,V_i \leq N
- U_i \neq V_i
- (U_i,V_i) \neq (U_j,V_j) для i\neq j
- -10^6\leq W_i \leq 10^6
- Заданный граф не содержит отрицательных циклов.
- Все входные значения — целые числа.

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

3 4
1 2 5
2 1 -3
2 3 -4
3 1 100

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

-2

Следуя по вершинам в порядке 2\rightarrow 1\rightarrow 2\rightarrow 3, вы можете посетить все вершины хотя бы раз, и общий вес пройденных рёбер равен (-3)+5+(-4)=-2.
Это минимум.

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

3 2
1 2 0
2 1 0

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

No

Нет пути, который посещает все вершины хотя бы раз.

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

5 9
1 2 -246288
4 5 -222742
3 1 246288
3 4 947824
5 2 -178721
4 3 -947824
5 4 756570
2 5 707902
5 1 36781

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

-449429

Имеется взвешенный простой направленный граф с N вершинами и M ребрами.
Вершины пронумерованы от 1 до N, а i-е ребро имеет вес W_i и простирается от вершины U_i до вершины V_i.
Веса могут быть отрицательными, но граф не содержит отрицательных циклов.
Определите, существует ли обход, который посещает каждую вершину хотя бы один раз. Если такой обход существует, найдите минимальный общий вес пройденных ребер.
Если одно и то же ребро пройдено несколько раз, вес этого ребра добавляется для каждого обхода.
Здесь «обход, который посещает каждую вершину хотя бы один раз» — это последовательность вершин v_1,v_2,\dots,v_k, которая удовлетворяет обоим следующим условиям:

- Для каждого i (1\leq i\leq k-1) существует ребро, простирающееся от вершины v_i до вершины v_{i+1}.
- Для каждого j\ (1\leq j\leq N) существует i (1\leq i\leq k) такое, что v_i=j.

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

Входные данные задаются из стандартного ввода в следующем формате:
N M
U_1 V_1 W_1
U_2 V_2 W_2
\vdots
U_M V_M W_M

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

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

Ограничения

- 2\leq N \leq 20
- 1\leq M \leq N(N-1)
- 1\leq U_i,V_i \leq N
- U_i \neq V_i
- (U_i,V_i) \neq (U_j,V_j) for i\neq j
- -10^6\leq W_i \leq 10^6
- Данный граф не содержит отрицательных циклов.
- Все входные значения являются целыми числами.

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

3 4
1 2 5
2 1 -3
2 3 -4
3 1 100

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

-2

Следуя вершинам в порядке 2\rightarrow 1\rightarrow 2\rightarrow 3, вы можете посетить все вершины хотя бы один раз, а общий вес пройденных ребер составит (-3)+5+(-4)=-2.
Это минимум.

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

3 2
1 2 0
2 1 0

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

No

Нет обхода, который посещает все вершины хотя бы один раз.

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

5 9
1 2 -246288
4 5 -222742
3 1 246288
3 4 947824
5 2 -178721
4 3 -947824
5 4 756570
2 5 707902
5 1 36781

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

-449429

Дан взвешенный ориентированный простой граф с N вершинами и M рёбрами.
Вершины пронумерованы от 1 до N, i-е ребро имеет вес W_i и направлено от вершины U_i к вершине V_i.
Веса могут быть отрицательными, но граф не содержит отрицательных циклов.
Определите, существует ли путь, который посещает каждую вершину хотя бы раз. Если такой путь существует, найдите минимальный общий вес пройденных рёбер.
Если одно и то же ребро проходит несколько раз, его вес учитывается в каждом прохождении.
Здесь "путь, который посещает каждую вершину хотя бы раз" — это последовательность вершин v_1,v_2,\dots,v_k, которая удовлетворяет обоим следующим условиям:

- Для каждого i (1\leq i\leq k-1) существует ребро, которое ведёт из вершины v_i в вершину v_{i+1}.
- Для каждого j\ (1\leq j\leq N) существует i (1\leq i\leq k) такое, что v_i=j.

Вход

Входные данные подаются через стандартный ввод в следующем формате:
N M
U_1 V_1 W_1
U_2 V_2 W_2
\vdots
U_M V_M W_M

Выход

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

Ограничения

- 2\leq N \leq 20
- 1\leq M \leq N(N-1)
- 1\leq U_i,V_i \leq N
- U_i \neq V_i
- (U_i,V_i) \neq (U_j,V_j) для i\neq j
- -10^6\leq W_i \leq 10^6
- Заданный граф не содержит отрицательных циклов.
- Все входные значения — целые числа.

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

3 4
1 2 5
2 1 -3
2 3 -4
3 1 100

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

-2

Следуя по вершинам в порядке 2\rightarrow 1\rightarrow 2\rightarrow 3, вы можете посетить все вершины хотя бы раз, и общий вес пройденных рёбер равен (-3)+5+(-4)=-2.
Это минимум.

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

3 2
1 2 0
2 1 0

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

No

Нет пути, который посещает все вершины хотя бы раз.

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

5 9
1 2 -246288
4 5 -222742
3 1 246288
3 4 947824
5 2 -178721
4 3 -947824
5 4 756570
2 5 707902
5 1 36781

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

-449429


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

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

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

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

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

Ограничения

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

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

atcoder.jp

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

jp

Самый длинный суффикс atcoder.jp, который не содержит . — это jp.

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

translate.google.com

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

com

S может содержать несколько точек.

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

.z

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

z

S может начинаться с ..

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

..........txt

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

txt

S может содержать подряд .s.

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

Input

The input is given from Standard Input in the following format:
S

Output

Print the answer.

Constraints

- S is a string of length between 2 and 100, inclusive, consisting of lowercase English letters and ..
- S contains at least one ..
- S does not end with ..

Sample Input 1

atcoder.jp

Sample Output 1

jp

The longest suffix of atcoder.jp that does not contain . is jp.

Sample Input 2

translate.google.com

Sample Output 2

com

S may contain multiple .s.

Sample Input 3

.z

Sample Output 3

z

S may start with ..

Sample Input 4

..........txt

Sample Output 4

txt

S may contain consecutive .s.

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

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

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

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

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

Ограничения

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

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

atcoder.jp

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

jp

Самый длинный суффикс atcoder.jp, который не содержит . — это jp.

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

translate.google.com

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

com

S может содержать несколько точек

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

.z

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

z

S может начинаться с ..

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

..........txt

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

txt

S может содержать подряд идущие .s.


Существует сетка с H строками и W столбцами; изначально все ячейки окрашены в белый цвет. Обозначим через (i, j) ячейку в i-й строке сверху и j-м столбце слева.
Эта сетка считается тороидальной. То есть (i, 1) находится справа от (i, W) для каждого 1 \leq i \leq H, а (1, j) находится ниже (H, j) для каждого 1 \leq j \leq W.
Такахаши находится в точке (1, 1) и смотрит вверх. Выведите цвет каждой ячейки сетки после того, как Такахаши повторит следующую операцию N раз.

- Если текущая ячейка окрашена в белый цвет, перекрасьте её в чёрный цвет, поверните на 90^\circ по часовой стрелке и переместите одну ячейку вперёд в том направлении, в котором она смотрит. В противном случае перекрасьте текущую ячейку в белый цвет, поверните на 90^\circ против часовой стрелки и переместите одну ячейку вперёд в том направлении, в котором она смотрит.

Вход

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

Вывод

Напечатайте линии H. i-я строка должна содержать строку длины W, в которой j-й символ равен . если ячейка (i, j) окрашена в белый цвет, и #, если она окрашена в чёрный цвет.

Ограничения

- 1 \leq H, W \leq 100
- 1 \leq N \leq 1000
- Все вводные значения являются целыми числами.

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

3 4 5

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

.#..
##..
....

В результате операций ячейки сетки изменяются следующим образом:
....   #...   ##..   ##..   ##..   .#..
.... → .... → .... → .#.. → ##.. → ##..
....   ....   ....   ....   ....   ....

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

2 2 1000

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

..
..

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

10 10 10

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

##........
##........
..........
..........
..........
..........
..........
..........
..........
#........#

Есть сетка с H строками и W столбцами; изначально все ячейки окрашены в белый цвет. Пусть (i, j) обозначает ячейку в i-й строке сверху и j-м столбце слева.
Эта сетка считается тороидальной. То есть (i, 1) находится справа от (i, W) для каждого 1 \leq i \leq H, а (1, j) находится ниже (H, j) для каждого 1 \leq j \leq W.
Такахаши находится в точке (1, 1) и смотрит вверх. Выведите цвет каждой ячейки сетки после того, как Такахаши повторит следующую операцию N раз.

- Если текущая ячейка окрашена в белый цвет, перекрасьте ее в черный цвет, поверните на 90^\circ по часовой стрелке и переместитесь на одну ячейку вперед в направлении, куда он смотрит. В противном случае перекрасьте текущую ячейку в белый цвет, поверните на 90^\circ против часовой стрелки и переместитесь на одну ячейку вперед в направлении, куда он смотрит.

Ввод

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

Вывод

Вывести H строк. i-я строка должна содержать строку длиной W, где j-й символ — ., если ячейка (i, j) окрашена в белый цвет, и #, если она окрашена в черный цвет.

Ограничения

- 1 \leq H, W \leq 100
- 1 \leq N \leq 1000
- Все входные значения являются целыми числами.

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

3 4 5

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

.#..
##..
....

Ячейки сетки изменяются следующим образом из-за операций:
.... #... ##.. ##.. ##.. .#..
.... → .... → .... → .#.. → ##.. → ##..
.... .... .... .... .... ....

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

2 2 1000

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

..
..

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

10 10 10

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

##........
##........
..........
..........
..........
..........
..........
..........
..........
#........#

Существует сетка с H строками и W столбцами; Изначально все клетки окрашены в белый цвет. Пусть (i, j) обозначает ячейку в i-й строке сверху и j-й колонке слева.
Эта сетка считается тороидальной. То есть (i, 1) справа от (i, W) для каждого 1 \ leq i \ leq h, и (1, j) ниже (H, j) для каждого 1 \ leq J \ leq W
Такахаши находится в (1, 1) и лицом вверх. Выведите цвет каждой ячейки сетки после того, как Такахаши выполнит следующую операцию N раз.

- Если текущая ячейка окрашена в белый цвет, перекрасите ее в черный цвет, поверните 90^\ Circ по часовой стрелке и двигайте вперед одну ячейку в направлении, в котором он смотрит. В противном случае, перекрасите текущую ячейку белую, поверните 90^\ Circ против часовой стрелки и переместите одну ячейку в направлении, в котором он смотрит.

Вход

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

Выход

Печать H Линии. Линия i-th должна содержать цепочку длины W, где находится символ J-Th. Если ячейка (i, j) окрашена в белый цвет, и #, если она окрашена в черный цвет.

Ограничения

- 1 \leq H, W \leq 100
-1 \leq N \leq 1000
- Все входные значения являются целыми числами.

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

3 4 5

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

.#..
## ..
....

Клетки сетки изменяются следующим образом из -за операций:
.... #... ## .. ## .. ## ... #..
.... → .... → .... →.#.. → ## .. → ## ..
.... .... .... .... .... ....

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

2 2 1000

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

..
..

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

10 10 10

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

## ........
## ........
..........
..........
..........
..........
..........
..........
..........
#........#


Автобус едет по маршруту. Количество пассажиров в автобусе всегда является неотрицательным целым числом.
В какой-то момент времени в автобусе было ноль или более пассажиров, и с тех пор он остановился N раз. На i-й остановке количество пассажиров увеличилось на A_i. Здесь A_i может быть отрицательным, что означает, что количество пассажиров уменьшилось на -A_i. Кроме того, никто не садился и не выходил из автобуса, кроме как на остановках.
Найди минимальное возможное текущее количество пассажиров в автобусе, соответствующее данной информации.

Ввод

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

Вывод

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

Ограничения

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

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

4
3 -5 7 -4

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

3

Если начальное количество пассажиров было 2, то текущее количество пассажиров было бы 2 + 3 + (-5) + 7 + (-4) = 3, и количество пассажиров в автобусе всегда оставалось бы неотрицательным целым числом.

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

5
0 0 0 0 0

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

0

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

4
-1 1000000000 1000000000 1000000000

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

3000000000

Автобус ходит. Количество пассажиров в автобусе всегда является неотрицательным целым числом.
В какой-то момент времени в автобусе было ноль или более пассажиров, и с тех пор он останавливался N раз. На i-й остановке количество пассажиров увеличилось на A_i. Здесь A_i может быть отрицательным, то есть количество пассажиров уменьшилось на -A_i. Кроме того, пассажиры не входили и не выходили из автобуса, кроме как на остановках.
Определите минимально возможное текущее количество пассажиров в автобусе, которое соответствует заданной информации.

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

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

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

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

Ограничения

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

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

4
3 -5 7 -4

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

3

Если изначальное количество пассажиров было 2, то текущее количество пассажиров будет 2 + 3 + (-5) + 7 + (-4) = 3, а количество пассажиров в автобусе всегда будет неотрицательным целым числом.

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

5
0 0 0 0 0

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

0

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

4
-1 1000000000 1000000000 10000000000

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

30000000000


Есть сетка размером N \times N, где каждая ячейка либо пуста, либо содержит препятствие. Пусть (i, j) обозначает ячейку в i-й строке сверху и j-й столбец слева.
На сетке также находятся два игрока в разных пустых ячейках. Информация о каждой ячейке представлена как N строк S_1, S_2, \ldots, S_N длиной N в следующем формате:

-
Если j-й символ S_i — P, то (i, j) — пустая ячейка с игроком.

-
Если j-й символ S_i — ., то (i, j) — пустая ячейка без игрока.

-
Если j-й символ S_i — #, то (i, j) содержит препятствие.

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

- Выберите одно из четырех направлений: вверх, вниз, влево или вправо. Затем каждый игрок пытается переместиться в соседнюю ячейку в этом направлении. Каждый игрок перемещается, если целевая ячейка существует и пуста, иначе не перемещается.

Ввод

Ввод предоставляется в следующем формате:
N
S_1
S_2
\vdots
S_N

Вывод

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

Ограничения

- N — целое число от 2 до 60 включительно.
- S_i — строка длины N, состоящая из P, . и #.
- Существует ровно две пары (i, j), где j-й символ S_i — P.

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

5
....#
#..#.
.P...
..P..
....#

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

3

Назовем игрока, начинающего с (3, 2), Игроком 1, а игрока, начинающего с (4, 3), Игроком 2.
Например, следующее действие приведет двух игроков в одну ячейку за три хода:

-
Выберите влево. Игрок 1 перемещается в (3, 1), а Игрок 2 перемещается в (4, 2).

-
Выберите вверх. Игрок 1 не перемещается, а Игрок 2 перемещается в (3, 2).

-
Выберите влево. Игрок 1 не перемещается, а Игрок 2 перемещается в (3, 1).

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

2
P#
#P

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

-1

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

10
..........
..........
..........
..........
....P.....
.....P....
..........
..........
..........
..........

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

10

Есть сетка N \times N, где каждая ячейка либо пуста, либо содержит препятствие. Пусть (i, j) обозначает ячейку в i-й строке сверху и j-м столбце слева.
Также есть два игрока в разных пустых ячейках сетки. Информация о каждой ячейке задается в виде N строк S_1, S_2, \ldots, S_N длины N в следующем формате:

-
Если j-й символ S_i — P, то (i, j) — пустая ячейка с игроком на ней.

-
Если j-й символ S_i — ., то (i, j) — пустая ячейка без игрока.

-
Если j-й символ S_i — #, то (i, j) содержит препятствие.

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

- Выберите одно из четырех направлений: вверх, вниз, влево или вправо. Затем каждый игрок пытается переместиться в соседнюю клетку в этом направлении. Каждый игрок перемещается, если конечная клетка существует и пуста, и не перемещается в противном случае.

Ввод

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

Вывод

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

Ограничения

- N — целое число от 2 до 60 включительно.
- S_i — строка длины N, состоящая из P, . и #.
- Существует ровно две пары (i, j), где j-й символ S_i — это P.

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

5
....#
#..#.
.P...
..P..
....#

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

3

Назовем игрока, стартующего в (3, 2), Игроком 1, а игрока, стартующего в (4, 3), Игроком 2.
Например, выполнение следующих действий перенесет двух игроков в одну и ту же клетку за три хода:

-
Выберите «влево». Игрок 1 перемещается в (3, 1), а Игрок 2 перемещается в (4, 2).

-
Выберите «вверх». Игрок 1 не перемещается, а Игрок 2 перемещается в (3, 2).

-
Выберите «влево». Игрок 1 не перемещается, а Игрок 2 перемещается в (3, 1).

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

2
P#
#P

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

-1

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

10
..........
..........
..........
..........
....P.....
.....P....
..........
..........
..........
..........

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

10

Существует n \ times n сетка, где каждая ячейка либо пуста, либо содержит препятствие. Пусть (i, j) обозначает ячейку в i-й строке сверху и j-м столбце слева.
Есть также два игрока на отдельных пустых клетках сетки. Информация о каждой ячейке дана как n строки S_1, S_2, \ ldots, s_n длины n, в следующем формате:

-
Если j-й символ S_i-это P, то (i, J)-пустая ячейка с игроком на нем.

-
Если j-й символ S_i есть., То (i, J)-пустая ячейка без игрока.

-
Если j-й символ S_i # #, то (i, j) содержит препятствие.

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

- Выберите одно из четырех направлений: вверх, вниз, влево или вправо. Затем каждый игрок пытается перейти к соседней ячейке в этом направлении. Каждый игрок движется, если ячейка назначения существует и пуста, и не движется иначе.

Вход

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

Выход

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

Ограничения

- N - целое число между 2 и 60, включительно.
- S_i - это строка длины n, состоящая из P ,., и #.
- Есть ровно две пары (i, j), где J-й символ S_i- P.

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

5
....#
#..#.
.P ...
..P ..
....#

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

3

Давайте назовем игрока, начиная с (3, 2) игроком 1, и игрока, начинающего (4, 3) игроком 2.
Например, выполнение следующего приводит двух игроков в одну и ту же ячейку в трех ходах:

-
Выберите влево. Игрок 1 переходит к (3, 1), а игрок 2 переходит к (4, 2).

-
Выберите. Игрок 1 не движется, и игрок 2 переходит к (3, 2).

-
Выберите влево. Игрок 1 не движется, и игрок 2 переходит к (3, 1).

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

2
P#
#P

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

-1

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

10
..........
..........
..........
..........
.... P .....
..... p ....
..........
..........
..........
..........

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

10


Выведи арифметическую последовательность с первым членом A, последним членом B и общей разностью D. Даны только те входные данные, для которых существует такая арифметическая последовательность.

Ввод

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

Вывод

Выведи члены арифметической последовательности с первым членом A, последним членом B и общей разностью D по порядку, разделяя их пробелами.

Ограничения

- 1 \leq A \leq B \leq 100
- 1 \leq D \leq 100
- Существует арифметическая последовательность с первым членом A, последним членом B и общей разностью D.
- Все входные значения — целые числа.

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

3 9 2

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

3 5 7 9

Арифметическая последовательность с первым членом 3, последним членом 9 и общей разностью 2 имеет вид (3,5,7,9).

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

10 10 1

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

10

Арифметическая последовательность с первым членом 10, последним членом 10 и общей разностью 1 имеет вид (10).

Выведите арифметическую последовательность, содержащую первый член A, последний член B и общую разность D.
Вам даны только вводные данные, для которых существует такая арифметическая последовательность.

Ввод

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

Вывод

Выведите члены арифметической последовательности с первым членом A, последним членом B и общей разностью D по порядку, разделив их пробелами.

Ограничения

- 1 \leq A \leq B \leq 100
- 1 \leq D \leq 100
- Существует арифметическая последовательность с первым членом А, последним членом В и общей разностью D.
- Все входные значения являются целыми числами.

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

3 9 2

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

3 5 7 9

Арифметическая последовательность с первым членом 3, последним членом 9 и общей разностью 2 равна (3,5,7,9).

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

10 10 1

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

10

Арифметическая последовательность с первым членом 10, последним членом 10 и общей разностью 1 равна (10).

Напечатать арифметическую последовательность с первым членом A, последним членом B и общим разностью D. Вам даны только такие входные данные, для которых существует такая арифметическая последовательность.

Ввод

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

Вывод

Выведите члены арифметической последовательности с первым членом A, последним членом B и общим разностью D по порядку, разделенные пробелами.

Ограничения

- 1 \leq A \leq B \leq 100
- 1 \leq D \leq 100
- Существует арифметическая последовательность с первым членом A, последним членом B и общим разностью D.
- Все входные значения - целые числа.

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

3 9 2

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

3 5 7 9

Арифметическая последовательность с первым членом 3, последним членом 9 и общим разностью 2 это (3,5,7,9).

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

10 10 1

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

10

Арифметическая последовательность с первым членом 10, последним членом 10 и общим разностью 1 это (10).


У вас есть пустая последовательность A. Даны Q запросов, и вам нужно обработать их в том порядке, в котором они даны.
Запросы бывают следующих двух типов:

- 1 x: Добавить x в конец A.
- 2 k: Найти k-е значение с конца A. Гарантируется, что длина A будет не менее k, когда задан этот запрос.

Ввод

Ввод дается из стандартного ввода в следующем формате:
Q
\mathrm{query}_1
\mathrm{query}_2
\vdots
\mathrm{query}_Q

Каждый запрос имеет один из следующих двух форматов:
1 x

2 k

Вывод

Выведите q строк, где q — количество запросов второго типа.
i-я строка должна содержать ответ на i-й такой запрос.

Ограничения

- 1 \leq Q \leq 100
- В первом типе запроса x — целое число, удовлетворяющее условию 1 \leq x \leq 10^9.
- Во втором типе запроса k — положительное целое число, не превышающее текущую длину последовательности A.

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

5
1 20
1 30
2 1
1 40
2 3

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

30
20

- Изначально A пуст.
- Первый запрос добавляет 20 в конец A, делая A=(20).
- Второй запрос добавляет 30 в конец A, делая A=(20,30).
- Ответ на третий запрос — 30, что является первым значением с конца A=(20,30).
- Четвертый запрос добавляет 40 в конец A, делая A=(20,30,40).
- Ответ на пятый запрос — 20, что является третьим значением с конца A=(20,30,40).

Вам дана пустая последовательность A. Существует Q запросов, вам необходимо обработать их в том порядке, как они представлены.
Запросы следующих двух типов:

- 1 x: Добавьте x к концу A.
- 2 k: Найдите k значение от конца A. Достоверно известно, что длина A - это по крайне мере k на момент предоставления запроса.

Input

The input is given from Standard Input in the following format:
Q
\mathrm{query}_1
\mathrm{query}_2
\vdots
\mathrm{query}_Q

Each query is in one of the following two formats:
1 x

2 k

Output

Print q lines, where q is the number of queries of the second type.
The i-th line should contain the answer to the i-th such query.

Constraints

- 1 \leq Q \leq 100
- In the first type of query, x is an integer satisfying 1 \leq x \leq 10^9.
- In the second type of query, k is a positive integer not greater than the current length of sequence A.

Sample Input 1

5
1 20
1 30
2 1
1 40
2 3

Sample Output 1

30
20

- A изначально пуст.
- Первый запрос добавляет 20 к концу А, таким образом A=(20).
- Второй запрос добавляет 30 к концу A, таким образом A=(20,30).
- Ответ на третий запрос - 30, что является 1-м значением с конца A=(20,30).
- Четвертый запрос добавляет 40 к концу A, таким образом A=(20,30,40).
- Ответ на пятый запрос - 20, что является 3-м значением с конца A=(20,30,40).

У вас есть пустая последовательность А. Есть Q запросов, и вам нужно обработать их в том порядке, в котором они заданы.
Запросы бывают следующих двух типов:

- 1 x: Добавить x в конец A.
- 2 k: Найти k-е значение от конца A. Гарантируется, что длина A составляет не менее k, когда дан этот запрос.

Input

The input is given from Standard Input in the following format:
Q
\mathrm{query}_1
\mathrm{query}_2
\vdots
\mathrm{query}_Q

Each query is in one of the following two formats:
1 x

2 k

Output

Print q lines, where q is the number of queries of the second type.
The i-th line should contain the answer to the i-th such query.

Constraints

- 1 \leq Q \leq 100
- In the first type of query, x is an integer satisfying 1 \leq x \leq 10^9.
- In the second type of query, k is a positive integer not greater than the current length of sequence A.

Sample Input 1

5
1 20
1 30
2 1
1 40
2 3

Sample Output 1

30
20

- Initially, A is empty.
- The first query appends 20 to the end of A, making A=(20).
- The second query appends 30 to the end of A, making A=(20,30).
- The answer to the third query is 30, which is the 1-st value from the end of A=(20,30).
- The fourth query appends 40 to the end of A, making A=(20,30,40).
- The answer to the fifth query is 20, which is the 3-rd value from the end of A=(20,30,40).


На доске написано одно целое число N.
Такахаши будет повторять следующую серию операций, пока все целые числа не меньше 2 не будут удалены с доски:

- Выберите одно целое число x не меньше 2, написанное на доске.
- Сотрите одно вхождение x с доски. Затем напишите два новых целых числа \left \lfloor \dfrac{x}{2} \right\rfloor и \left\lceil \dfrac{x}{2} \right\rceil на доске.
- Такахаши должен заплатить x иен, чтобы выполнить эту серию операций.

Здесь \lfloor a \rfloor обозначает наибольшее целое число не больше a, а \lceil a \rceil обозначает наименьшее целое число не меньше a.
Какую общую сумму денег заплатит Такахаши, когда больше нельзя будет выполнять операции?
Можно доказать, что общая сумма, которую он заплатит, постоянна независимо от порядка выполнения операций.

Ввод

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

Вывод

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

Ограничения

- 2 \leq N \leq 10^{17}

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

3

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

5

Вот пример того, как Такахаши выполняет операции:

- Изначально на доске написано одно число 3.
- Он выбирает 3. Он платит 3 иены, стирает одно число 3 с доски и пишет \left \lfloor \dfrac{3}{2} \right\rfloor = 1 и \left\lceil \dfrac{3}{2} \right\rceil = 2 на доске.
- На доске написано одно число 2 и одно число 1.
- Он выбирает 2. Он платит 2 иены, стирает одну 2 с доски и пишет \left \lfloor \dfrac{2}{2} \right\rfloor = 1 и \left\lceil \dfrac{2}{2} \right\rceil = 1 на доске.
- На доске написано три 1.
- Поскольку все целые числа не меньше 2 были удалены с доски, процесс завершен.

Такахаши заплатил в общей сложности 3 + 2 = 5 иен за весь процесс, поэтому выведите 5.

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

340

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

2888

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

1000000000000000000

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

5655884811924144128

На доске написано одно целое число N.
Такахаcи будет повторять следующую серию операций, пока все целые числа не меньше 2 не будут убраны с доски:

- Выбери одно целое число x не меньше 2, написанное на доске.
- Сотри одно вхождение x с доски. Затем напиши на доске два новых числа \left \lfloor \dfrac{x}{2} \right\rfloor и \left\lceil \dfrac{x}{2} \right\rceil.
- Такахаcи должен заплатить x йен за выполнение этой серии операций.

Здесь \lfloor a \rfloor обозначает наибольшее целое число не больше a, а \lceil a \rceil обозначает наименьшее целое число не меньше a.
Какую общую сумму денег Такахаcи заплатит, когда больше невозможно будет выполнять операции?
Можно доказать, что общая сумма, которую он заплатит, постоянна независимо от порядка выполнения операций.

Ввод

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

Вывод

Выведи общую сумму в йенах, которую заплатит Такахаcи.

Ограничения

- 2 \leq N \leq 10^{17}

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

3

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

5

Вот пример того, как Такахаcи выполняет операции:

- Изначально на доске написана одна 3.
- Он выбирает 3. Он платит 3 йены, стирает одну 3 с доски и пишет на доске \left \lfloor \dfrac{3}{2} \right\rfloor = 1 и \left\lceil \dfrac{3}{2} \right\rceil = 2.
- На доске написаны одна 2 и одна 1.
- Он выбирает 2. Он платит 2 йены, стирает одну 2 с доски и пишет на доске \left \lfloor \dfrac{2}{2} \right\rfloor = 1 и \left\lceil \dfrac{2}{2} \right\rceil = 1.
- На доске написаны три 1.
- Поскольку все целые числа не меньше 2 были удалены с доски, процесс завершен.

Такахаcи заплатил в общей сложности 3 + 2 = 5 йен за весь процесс, поэтому выведи 5.

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

340

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

2888

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

100000000000000000

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

5655884811924144128


Такахаши играет в игру.
Игра состоит из N этапов, пронумерованных 1, 2, \ldots, N. Изначально можно играть только на этапе 1.
Для каждого этапа i ( 1\leq i \leq N-1 ), который можно играть, можно выполнить одно из следующих двух действий на этапе i:

- Потратить A_i секунд, чтобы пройти этап i. Это позволяет играть на этапе i+1.
- Потратить B_i секунд, чтобы пройти этап i. Это позволяет играть на этапе X_i.

IИгнорируя время, кроме времени, потраченного на прохождение этапов, сколько секунд потребуется как минимум, чтобы можно было играть на этапе N?

Ввод

Ввод поступает из стандартного ввода в следующем формате:
N
A_1 B_1 X_1
A_2 B_2 X_2
\vdots
A_{N-1} B_{N-1} X_{N-1}

Вывод

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

Ограничения

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

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

5
100 200 3
50 10 1
100 200 5
150 1 2

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

350

Если действовать следующим образом, вы сможете играть на этапе 5 за 350 секунд.

- Потратьте 100 секунд, чтобы пройти этап 1, что позволит вам играть на этапе 2.
- Потратьте 50 секунд, чтобы пройти этап 2, что позволит вам играть на этапе 3.
- Потратьте 200 секунд, чтобы пройти этап 3, что позволит вам играть на этапе 5.

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

10
1000 10 9
1000 10 10
1000 10 2
1000 10 3
1000 10 4
1000 10 5
1000 10 6
1000 10 7
1000 10 8

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

90

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

6
1000000000 1000000000 1
1000000000 1000000000 1
1000000000 1000000000 1
1000000000 1000000000 1
1000000000 1000000000 1

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

5000000000

Такахаси играет в игру.
Игра состоит из N этапов с номерами 1,2,\ldots,N. Изначально можно играть только на этапе 1.
Для каждого этапа i ( 1\leq i \leq N-1 ), который может быть сыгран, вы можете выполнить одно из следующих двух действий на этапе i:

- Потратьте A_i секунд на прохождение этапа i. Это позволяет вам играть на уровне i+1.
- Потратьте B_i секунд на прохождение этапа i. Это позволяет играть на сцене X_i.

Если не обращать внимания на время, затраченное на прохождение уровней, сколько секунд потребуется как минимум, чтобы иметь возможность играть на уровне N?

Ввод

Входные данные подаются из Стандартного ввода в следующем формате:
N
A_1 B_1 X_1
A_2 B_2 X_2
\vdots
A_{N-1} B_{N-1} X_{N-1}

Выпуск

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

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

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

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

5
100 200 3
50 10 1
100 200 5
150 1 2

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

350

Действуя следующим образом, вы сможете пройти этап 5 за 350 секунд.

- Потратьте 100 секунд на прохождение этапа 1, который позволяет вам пройти этап 2.
- Потратьте 50 секунд на прохождение этапа 2, который позволяет вам сыграть этап 3.
- Потратьте 200 секунд на прохождение этапа 3, который позволяет вам пройти этап 5.

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

10
1000 10 9
1000 10 10
1000 10 2
1000 10 3
1000 10 4
1000 10 5
1000 10 6
1000 10 7
1000 10 8

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

90

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

6
1000000000 1000000000 1
1000000000 1000000000 1
1000000000 1000000000 1
1000000000 1000000000 1
1000000000 1000000000 1

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

5000000000

Такахаши играет в игру.
Игра состоит из N этапов, пронумерованных 1,2,\ldots,N. Изначально можно играть только на этапе 1.
Для каждого этапа i (1\leq i \leq N-1), на котором можно играть, вы можете выполнить одно из следующих двух действий на этапе i:

- Потратьте A_i секунд на прохождение этапа i. Это позволит вам сыграть на этапе i+1.
- Потратьте B_i секунд на прохождение этапа i. Это позволит вам сыграть на этапе X_i.

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

Ввод

Ввод дается из стандартного ввода в следующем формате:
N
A_1 B_1 X_1
A_2 B_2 X_2
\vdots
A_{N-1} B_{N-1} X_{N-1}

Вывод

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

Ограничения

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

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

5
100 200 3
50 10 1
100 200 5
150 1 2

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

350

Действуя следующим образом, вы сможете пройти этап 5 за 350 секунд.

- Потратьте 100 секунд на прохождение этапа 1, что позволит вам сыграть на этапе 2.
- Потратьте 50 секунд на прохождение этапа 2, что позволит вам сыграть на этапе 3.
- Потратьте 200 секунд на прохождение этапа 3, что позволит вам сыграть на этапе 5.

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

10
1000 10 9
1000 10 10
1000 10 2
1000 10 3
1000 10 4
1000 10 5
1000 10 6
1000 10 7
1000 10 8

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

90

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

6
1000000000 1000000000 1
10000000000 100000000000 1
1000000000 1000000000 1
1000000000 1000000000 1
1000000000 1000000000 1

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

5000000000


Условие

Имеется N коробок, пронумерованных от 0 до N-1. Изначально в коробке i содержится A_i шаров.
Такэхаси выполнит следующие операции для i=1,2,\ldots,M в порядке:

- Установите переменную C в 0.
- Выньте все шары из коробки B_i и держите их в руках.
- Пока в руках есть хотя бы один шар, повторяйте следующий процесс:
- Увеличьте значение C на 1.
- Положите один шар из рук в коробку с индексом (B_i+C) \bmod N.

Определите количество шаров в каждой коробке после завершения всех операций.

Ввод

Ввод поступает с стандартного ввода в следующем формате:
N M
A_0 A_1 \ldots A_{N-1}
B_1 B_2 \ldots B_M

Вывод

Пусть X_i - количество шаров в коробке i после завершения всех операций. Выведите X_0,X_1,\ldots,X_{N-1} в этом порядке, разделенных пробелами.

Ограничения

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

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

5 3
1 2 3 4 5
2 4 0

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

0 4 2 7 2

Операции выполняются следующим образом:

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

3 10
1000000000 1000000000 1000000000
0 1 0 1 0 1 0 1 0 1

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

104320141 45436840 2850243019

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

1 4
1
0 0 0 0

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

1

Есть N коробок, пронумерованных от 0 до N-1. Изначально коробка i содержит A_i шаров.
Такахаши выполнит следующие операции для i=1,2,\ldots,M по порядку:

- Установите переменную C на 0.
- Выньте все шары из коробки B_i и держите их в руке.
- Держа хотя бы один шар в руке, повторите следующий процесс:
- Увеличьте значение C на 1.
- Положите один шар из руки в коробку (B_i+C) \bmod N.

Определите количество шаров в каждой коробке после завершения всех операций.

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

Входные данные даются из стандартного ввода в следующем формате:
N M
A_0 A_1 \ldots A_{N-1}
B_1 B_2 \ldots B_M

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

Пусть X_i будет количеством шаров в коробке i после завершения всех операций. Выведите X_0,X_1,\ldots,X_{N-1} в этом порядке, разделенные пробелами.

Ограничения

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

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

5 3
1 2 3 4 5
2 4 0

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

0 4 2 7 2

Операции выполняются следующим образом:

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

3 10
1000000000 1000000000 10000000000
0 1 0 1 0 1 0 1 0 1

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

104320141 45436840 2850243019

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

1 4
1
0 0 0 0

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

1


Дано положительное целое число N, выведите строку из N нулей и N+1 единиц, где 0 и 1 чередуются.

Ввод

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

Вывод

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

Ограничения

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

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

4

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

101010101

Строка из четырех нулей и пяти единиц, где 0 и 1 чередуются, — это 101010101.

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

1

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

101

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

10

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

101010101010101010101

Дано положительное целое число N, выведите строку из N нулей и N+1 единиц, где 0 и 1 чередуются.

Ввод

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

Вывод

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

Ограничения

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

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

4

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

101010101

Строка из четырех нулей и пяти единиц, где 0 и 1 чередуются, равна 101010101.

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

1

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

101

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

10

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

101010101010101010101

Учитывая целое положительное число N, выведите строку из N нулей и N+1 единиц, где чередуются 0 и 1.

Ввод

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

Вывод

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

Ограничения

- N это целое число.
- 1 \leq N \leq 100

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

4

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

101010101

Строка из четырех нулей и пяти единиц, где чередуются 0 и 1, равна 101010101.

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

1

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

101

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

10

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

101010101010101010101


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

- Сначала выберите целое число i от 1 до N-1 включительно.
- Затем, если у Такахаши есть по крайней мере S_i единиц валюты страны i, он выполняет следующее действие один раз:
- Заплатите S_i единиц валюты страны i и получите T_i единиц валюты страны (i+1).

Выведите максимально возможное количество единиц валюты страны N, которое Такахаши может получить в итоге.

Ввод

Вводные данные даются из стандартного ввода в следующем формате:
N
A_1 A_2 \ldots A_N
S_1 T_1
S_2 T_2
\vdots
S_{N-1} T_{N-1}

Вывод

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

Ограничения

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

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

4
5 7 0 3
2 2
4 3
5 2

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

5

В следующем объяснении пусть последовательность A = (A_1, A_2, A_3, A_4) представляет количество единиц валют стран, которые есть у Такахаши. Изначально A = (5, 7, 0, 3).
Рассмотрим выполнение операции четыре раза следующим образом:

- Выберите i = 2, заплатите четыре единицы валюты страны 2 и получите три единицы валюты страны 3. Теперь A = (5, 3, 3, 3).
- Выберите i = 1, заплатите две единицы валюты страны 1 и получите две единицы валюты страны 2. Теперь A = (3, 5, 3, 3).
- Выберите i = 2, заплатите четыре единицы валюты страны 2 и получите три единицы валюты страны 3. Теперь A = (3, 1, 6, 3).
- Выберите i = 3, заплатите пять единиц валюты страны 3 и получите две единицы валюты страны 4. Теперь A = (3, 1, 1, 5).

В этот момент у Такахаши есть пять единиц валюты страны 4, что является максимально возможным числом.

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

10
32 6 46 9 37 8 33 14 31 5
5 5
3 1
4 3
2 2
3 2
3 2
4 4
3 3
3 1

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

45

Даны N стран, пронумерованных от 1 до N. Для каждого i = 1, 2, \ldots, N, у Такаяши есть A_i единиц валюты страны i.
Такахаши может повторять следующую операцию любое количество раз, возможно, ноль:

- Сначала выберите целое число i от 1 до N-1 включительно.
- Затем, если у Такаяши есть по крайней мере S_i единиц валюты страны i, он выполняет следующее действие один раз:
- Заплатите S_i единиц валюты страны i и получите T_i единиц валюты страны (i+1).

Выведите максимальное возможное количество единиц валюты страны N, которое Такаяши может иметь в итоге.

Ввод

Ввод подается со стандартного ввода в следующем формате:
N
A_1 A_2 \ldots A_N
S_1 T_1
S_2 T_2
\vdots
S_{N-1} T_{N-1}

Вывод

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

Ограничения

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

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

4
5 7 0 3
2 2
4 3
5 2

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

5

В следующем объяснении пусть последовательность A = (A_1, A_2, A_3, A_4) представляет количество единиц валют стран, которыми владеет Такаяша. Изначально, A = (5, 7, 0, 3).
Рассмотрим выполнение операции четыре раза следующим образом:

- Выберите i = 2, заплатите четыре единицы валюты страны 2 и получите три единицы валюты страны 3. Теперь A = (5, 3, 3, 3).
- Выберите i = 1, заплатите две единицы валюты страны 1 и получите две единицы валюты страны 2. Теперь A = (3, 5, 3, 3).
- Выберите i = 2, заплатите четыре единицы валюты страны 2 и получите три единицы валюты страны 3. Теперь A = (3, 1, 6, 3).
- Выберите i = 3, заплатите пять единиц валюты страны 3 и получите две единицы валюты страны 4. Теперь A = (3, 1, 1, 5).

На этом этапе у Такаяши есть пять единиц валюты страны 4, что является максимально возможным количеством.

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

10
32 6 46 9 37 8 33 14 31 5
5 5
3 1
4 3
2 2
3 2
3 2
4 4
3 3
3 1

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

45

Существует N стран с номерами от 1 до N. Для каждогоi = 1, 2, \ldots, N, у Такахаши есть A_i единиц валюты страны i.
Такахаши может повторить следующую операцию любое количество раз, возможно, ноль:

- Сначала выберите целое число i от 1 до N-1, включительно.
- Затем, если у Такахаши имеется хотя бы S_i единиц валюты страны i, он один раз выполняет следующее действие:
- Заплатите S_i единиц валюты страны i и получите T_i единиц валюты страны (i+1).

Выведите максимально возможное количество единиц валюты страны N, которое в итоге могло остаться у Такахаши.

Ввод

Вводные данные передаются из стандартного ввода в следующем формате:
N
A_1 A_2 \ldots A_N
S_1 T_1
S_2 T_2
\vdots
S_{N-1} T_{N-1}

Вывод

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

Ограничения

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

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

4
5 7 0 3
2 2
4 3
5 2

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

5

В следующем объяснении пусть последовательность A = (A_1, A_2, A_3, A_4) представляет количество единиц валют стран, которые есть у Такахаши. Первоначально, A = (5, 7, 0, 3).
Рассмотрите возможность выполнения операции четыре раза следующим образом:

- Выберите i = 2, заплатите четыре единицы валюты страны 2, и получите три единицы валюты страны 3. Теперь, A = (5, 3, 3, 3).
- Выберите i = 1, заплатите две единицы валюты страны 1, и получите две единицы валюты страны 2. Теперь, A = (3, 5, 3, 3).
- Выберите i = 2, заплатите четыре единицы валюты страны 2, и получите три единицы валюты страны 3. Теперь, A = (3, 1, 6, 3).
- Выберите i = 3, заплатите пять единиц валюты страны 3, и получите две единицы валюты страны 4. Теперь, A = (3, 1, 1, 5).

На данный момент у Такахаши есть пять единиц валюты страны 4, что является максимально возможным числом.

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

10
32 6 46 9 37 8 33 14 31 5
5 5
3 1
4 3
2 2
3 2
3 2
4 4
3 3
3 1

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

45