EduBrick

H. Максимум по подмаскам

3000 мс · 256 МБ · всё или ничего

Как классная задача H, но вместо суммы нужен максимум по подмаскам.

Перебор подмасок тот же самый — меняется только то, что делается внутри цикла. Пустая подмаска тоже участвует, так что начинать сравнение стоит с a[0]a[0], а не с минус бесконечности.

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

Формат ввода

Первая строка содержит числа nn (1≤n≤201 \le n \le 20) и qq (1≤q≤201 \le q \le 20).

Вторая строка — 2n2^n чисел a[i]a[i] (∣a[i]∣≤109|a[i]| \le 10^9).

Третья строка — qq масок mm (0≤m<2n0 \le m < 2^n).

Формат вывода

Одна строка из qq чисел.

Примеры

ввод
2 2
1 2 3 4
3 1
вывод
4 2
Войдите, чтобы отправлять решения.