Lin88's Palindrome
题号:NC221054
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 1024 M,其他语言2048 M
64bit IO Format: %lld

题目描述

Lin88 是实验室里唯一指定精通制服串的人,回文串当然也不意外的被他精通了。

我们复习一下回文串的定义,当一个字符串从前往后读和从后往前读一模一样时,这个串就是一个回文串。如``abba''和``aba'' 是回文串,而``abab''和``obdo''不是回文串。

现在,Lin88 给你一个由小写字母组成的字符串 ,他会不停修改这个串中某个位置的字符。你需要在每次完成修改后,告诉 Lin88 当前这个字符串是不是回文串。

输入描述:

第一行有一个由小写字母组成的字符串 s,

第二行有一个整数 q ,表示 Lin88 对你的询问总次数。

接下来 q 行,每行有一个整数 x 和 一个小写字母 c,,表示这次询问将 s_x 修改为 c。

每次询问的修改都会在上一次修改的基础上进行;字符串的下标从 1 开始。

输出描述:

对于每个询问输出一行 "Yes"或者"No" (不含引号),代表经过修改后是不是回文串。
示例1

输入

复制
abc
3
1 c
2 c
3 b

输出

复制
Yes
Yes
No

说明

样例中每次询问时的字符串分别为:"cbc","ccc","ccb"