[JSOI2008]最大数maxnumber
现在请你维护一个数列,要求提供以下两种操作。
1. 查询操作
- 语法:
Q L - 功能:查询当前数列中末尾 个数中最大的数,并输出这个数的值;
- 限制: 不超过当前数列的长度。
2. 插入操作
- 语法:
A n - 功能:将 加上 ,其中 是最近一次查询操作的答案(如果还未执行过查询操作,则 ),并将所得结果对一个固定的常数 取模,将所得答案插入到数列的末尾;
- 限制: 是非负整数并且在长整型范围内。
注意:初始时数列是空的,没有一个数。
输入格式
第一行两个整数 和 ,其中 表示操作的个数, 如上文中所述。
接下来 行,每行为一个查询操作或者插入操作。
输出格式
对于每一个查询操作,输出一行,该行只有一个数,即序列中最后 个数的最大数。
样例输入
5 100
A 96
Q 1
A 97
Q 1
Q 2
样例输出
96
93
96
样例解释
A 96:此时 ,插入 ,数列为 ;Q 1:末尾 个数的最大值为 ,输出 ,此后 ;A 97:插入 ,数列为 ;Q 1:末尾 个数的最大值为 ,输出 ,此后 ;Q 2:末尾 个数的最大值为 ,输出 。
数据范围
- ;
- 在长整型范围内。
来源与许可
本题为 JSOI 2008 试题「最大数 maxnumber」,题面与测试数据整理自 BZOJ 1012。
样例 1
输入
5 100
A 96
Q 1
A 97
Q 1
Q 2
输出
96
93
96