题目名称 2857. Push,Pop,GetMin
输入输出 minstack.in/out
难度等级 ★☆
时间限制 1000 ms (1 s)
内存限制 512 MiB
测试数据 5
题目来源 Gravatarsyzhaoss 于2025-11-03加入
开放分组 全部用户
提交状态
分类标签
分享题解
通过:12, 提交:28, 通过率:42.86%
Gravatarexil 100 0.013 s 3.87 MiB C++
Gravatarsyzhaoss 100 0.013 s 3.88 MiB C++
Gravatarsyzhaoss 100 0.013 s 3.90 MiB C++
Gravatarsyzhaoss 100 0.013 s 3.90 MiB C++
Gravatar杨蕙宇 100 0.014 s 3.83 MiB C++
Gravatar赵飞羽 100 0.014 s 3.84 MiB C++
Gravatarexil 100 0.014 s 3.86 MiB C++
GravatarChenBp 100 0.014 s 3.86 MiB C++
Gravatar董彰奇 100 0.014 s 3.87 MiB C++
Gravatarexil 100 0.014 s 3.89 MiB C++
关于 Push,Pop,GetMin 的近10条评论(全部评论)

2857. Push,Pop,GetMin

★☆   输入文件:minstack.in   输出文件:minstack.out   交互式
时间限制:1 s   内存限制:512 MiB

【题目描述】

这是一道交互题。

设计一个支持push,pop,top等操作并且可以在O$(1)$时间内检索出最小元素的栈。

【实现细节】

选手不需要,也不应该实现main函数。

选手应确保提交的程序包含头文件minstack.h,可以在开头加入以下代码实现。

#include "minstack.h"

选手需要实现以下函数:

void push(int x);  // 将整数x入栈
void pop();        // 出栈
int top();         // 获取当前栈顶元素
int getMin();      // 获取当前栈内最小的元素值 

【调用样例】

push(-1);
push(3);
push(-4);
getMin();  // 函数返回-4
pop();
top();      // 函数返回3
getMin();   // 函数返回1

【注意】

评测时必须使用文件输入输出评测机。