Саша долго решал с друзьями задачи по спортивному программированию, а на закуску у них были бутерброды. Все гости Саши уже разошлись. Саша выбросил все крошки, и теперь ему надо помыть посуду. Когда он начал мыть посуду, он посмотрел на сушилку. Тарелки в сушилке напомнили ему скобочную последовательность. В зависимости от того, в какую сторону повёрнута тарелка, она выглядит как открывающая ‘(’ или закрывающая ‘)’ скобка. Сушилка может быть не полностью заполнена тарелками, то есть некоторые места могут пустовать. Саша задумался, какой стороной лучше поставить вымытые тарелки. Ему интересно, какие префиксы сушилки он сможет превратить в правильную скобочную последовательность.
Сушилку можно представить как строку длины N, состоящую из символов ‘(’, ‘)’ и ‘?’. Символ ‘?’ обозначает пустое место, на которое можно поставить тарелку. У Саши есть Q независимых вопросов, в i-м из которых дано одно число ki. Для каждого вопроса определите, можно ли в префиксе длины ki заменить каждый символ ‘?’ на ‘(’ или ‘)’ так, чтобы получившийся префикс стал правильной скобочной последовательностью.
Напомним, что строка называется правильной скобочной последовательностью, если она либо пустая, либо имеет вид (S1)S2, где S1 и S2 являются правильными скобочными последовательностями.
Исходные данные
В первой строке дано число N (1 ≤ N ≤ 105) — количество мест в сушилке.
Во второй строке дана строка длины N, состоящая из символов ‘(’, ‘)’ и ‘?’, описывающая сушилку.
В третьей строке дано число Q (1 ≤ Q ≤ N).
В четвёртой строке даны Q различных целых чисел ki (1 ≤ ki ≤ N), где ki — длина префикса в i-м вопросе.
Результат
Выведите Q строк. В i-й строке выведите «YES», если префикс длины ki можно превратить в правильную скобочную последовательность, и «NO» иначе.
Примеры
| исходные данные | результат |
|---|
10
((?)()(??)
5
2 4 6 9 10
| NO
YES
YES
NO
YES
|
5
???)?
3
2 4 5
| YES
YES
NO
|
Автор задачи: Тимофей Имаев
Источник задачи: Квалификационный тур Уральского регионального чемпионата ICPC 2026