题解 | 【模板】栈

【模板】栈

https://www.nowcoder.com/practice/104ce248c2f04cfb986b92d0548cccbf

//通过vector模拟即可,resize可以直接截取前面的数字舍弃末尾,剩下的直接简单输出就行
#include <iostream>
#include <vector>
#include <string>
using namespace std;

vector<int>res;
int n;

void push(int &val){
    res.emplace_back(val);
    return;
}
void pop(){
    if(!res.empty()){
        cout<<res.back()<<endl;
        res.resize(res.size()-1);
    }
    else cout<<"error"<<endl;
    return ;
}

void top(){
    if(!res.empty()){
        cout<<res.back()<<endl;
    }
    else cout<<"error"<<endl;
    return ;
}
int main() {
    int n;cin>>n;
    while(n--){
        string s;
        cin>>s;
        if(s=="push"){
            int val;
            cin>>val;
            push(val);
        }
        else if(s=="pop"){
            pop();
        }
        else top();
    }
    return 0;
}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

链接
海梨花:我说话难听,你这简历跟没写没啥区别,搜搜别人的简历,用心写,不要随随便便就结束了
点赞 评论 收藏
分享
影04714:把图书管理系统那个项目经验内容适当的减少掉,然后改成据为己有不要说团队项目,因为图书管理系统这类常见的谁来了都能独立写出来,提问能圆过来即可
点赞 评论 收藏
分享
10-29 18:20
济南大学 Java
用微笑面对困难:他不是人事吗,怎么净特么不干人事
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务