Комментарии
От: Serge  
Дата: 24.08.20 09:28
Оценка:
Есть такая задача с одного из конкурсов.

В новом языке программирования все программы записываются в одну строчку, а используемых символов всего три: ’/’ , ’*’ и ’.’. При этом комментарии имеют вид "/*S*/", где S не содержит подстроки "*/", или вид "/*S", если последовательность "*/" не встречается до конца программы. Комментарии не могут пересекаться и определяются при просмотре символов текста программы, начиная с самого первого. К сожалению, программам разрешается изменять свой собственный текст, поэтому нахождение комментариев становится непростым делом. Напишите программу, которая определяет, является ли данный символ в данный момент времени частью комментария в программе на новом языке программирования.

Ограничения: 1 ≤ |S| ≤ 100'000, число запросов n (1 ≤ n ≤ 100'000). В следующих n строках находятся запросы двух типов. Если нужно изменить символ в программе, то в строке записано число 1, позиция символа от 1 до |S| и новое значение символа в этой позиции. Если нужно узнать, является ли символ комментарием, то в строке записано число 2 и позиция символа от 1 до |S|.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.