一. 题目要求
小可觉得普通的栈过于普通,功能过于简单,所有人都会这个栈。
因此小可提出了一个“加强栈”的思想。加强栈支持以下几个操作:
push x表示将数字x入栈pop表示出栈,并且出栈过程中输出出栈元素add k x表示将栈底前k个元素均加xsize表示计算栈内元素个数,并打印元素数量empty表示判断栈是否为空,如果空则输出True,否则输出False
输入描述
第一行输入一个N,表示操作数量。
然后输入N行,每行一个操作,格式如题目描述
输出描述
对于需要进行输出的操作,打印其值,每个打印占一行。
输入样例
9push 1add 1 2push 2add 2 2popemptysizepopempty
输出样例
4False15True
数据范围
30%的数据下:1≤𝑁≤20001≤N≤2000
100%的数据下:1≤𝑁≤2000001≤N≤200000,数据保证合法。
二.解题思路
1.push x 入栈,定义一个栈,直接进行操作
2.pop 先输出栈顶元素,再出栈
3.size 直接输出s.size()
4.empty 判断是否为空,为空返回1并输出True,不为空返回0并输出False
三.代码


1541

被折叠的 条评论
为什么被折叠?



