模拟一个栈
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
题目描述
希蒙学习完栈后非常的兴奋,过几天后他忘记了栈的基本函数是怎么使用的,但是知道用数组模拟栈的原理,现在他将栈的基本原理告诉你😕 ,请你完成一个用数组模拟的栈(如果你记得怎么使用栈也可以直接用函数完成)👀️
输入一个有个整数的一维数组,然后对它进行次指定操作。
- 在数组的末尾添加一个元素。
- 删除数组末尾的元素
- 输出数组的末尾元素
- 查看当前这个数组中存放的元素个数
- 清空数组
举例说明
可以用一个变量p表示数组末尾元素的下标
8 4 3 2
↑
p
数组末尾添加一个元素3则数组变则变为
8 4 3 2 3
↑
p
删除数组末尾元素只需要移动下标p即可
8 4 3 2 3
↑
p
输出数组的末尾元素即变量p所指向的数组元素此处输出2
输出数组中元素个数此处输出4
清空数组只需要将变量p移动到第一个元素的前面即可
输入格式
第1行:两个整数 第2行:个整数 ,用空格隔开 第3~3+m:每行第一个整数表示 ,表示对应的操作命令,特别的当 为 1 时需要再输入一个整数 x 。以下是操作命令对应的意思。
- 1 x 末尾插入一个元素 x
- 2 删除末尾元素
- 3 输出末尾元素
- 4 查看数组长度
- 5 清空数组
特别的:如果数组为空时(忽略查看和删除操作)
输出格式
对于3 4 操作有对应的输出,每个输出的数字占一行。
样例
输入样例 1
5 3
1 2 3 4 5
1 2
3
4
输出样例 1
2
6
数据范围与提示
对于100%的数据: