eolymp
bolt
Try our new interface for solving problems
Problems

Ленточка 2

Ленточка 2

Расположенную вертикально прямоугольную бумажную ленточку с закреплённым нижним концом стали складывать следующим образом: \begin{itemize} \item на первом шаге её согнули пополам так, что верхняя половина легла на нижнюю либо спереди (\textbf{P}-сгибание) либо сзади (\textbf{Z}-сгибание); \item на последующих \textbf{n-1} шагах выполнили аналогичное действие с получившейся на предыдущем шаге согнутой ленточкой, как с единым целым. \end{itemize} Затем ленточку развернули, приведя её в исходное состояние. На ней остались сгибы - рёбра от перегибов, причём некоторые из рёбер оказались направленными выпуклостью к нам (\textbf{K}-рёбра), а некоторые - от нас (\textbf{O}-рёбра). Рёбра пронумеровали сверху вниз числами от \textbf{1} до \textbf{2^n-1}. \textbf{Требуется} написать программу, которая по заданным строке символов из прописных букв "\textbf{P}" и "\textbf{Z}", определяющей последовательность типов сгибаний, и номерам рёбер сообщает тип этих рёбер, получившийся после этой последовательности операций. \InputFile Входной файл содержит в первой строке число \textbf{n} - количество сгибаний ленточки (\textbf{n} не более \textbf{60}), во второй строке - набор \textbf{n} символов из прописных латинских букв "\textbf{P}" и "\textbf{Z}". Третья строка содержит в начале число \textbf{k} - количество рассматриваемых рёбер (не более \textbf{10}), а далее их номера (числа от \textbf{1} до \textbf{2^n-1}). \OutputFile В единственную строку выходного файла нужно вывести \textbf{k} символов (прописные латинские буквы "\textbf{K}" или "\textbf{O}") - типы рассматриваемых рёбер.
Time limit 1 second
Memory limit 64 MiB
Input example #1
1
Z
1 1
Output example #1
K