当前位置: 首页 > news >正文

栈与乘积 / 栈

题目

代码

#include <bits/stdc++.h>
using namespace std;
using ll = long long;const int N = 1e5+10;struct node
{int w, pos;
};node stk[N];
int p, cnt;
int stk0[N], p0;int main()
{int n;cin >> n;while(n--){int op;cin >> op;if(op == 1){int x;cin >> x;if(x == 1){cnt++;continue;}stk[++p] = {x, ++cnt};if(x == 0) stk0[++p0] = cnt;}else if(op == 2){if(cnt) cnt--;if(stk[p].pos > cnt){int x = stk[p--].w;if(x == 0) p0--;}}else if(op == 3){int x;cin >> x;if(cnt < x) puts("ERROR");else if(stk0[p0] >= cnt - x + 1) puts("0");else{ll t = 1;for(int i = p; stk[i].pos >= cnt - x + 1; i--){t *= stk[i].w;if(t >= (1ll << 32)) break;}if(t >= (1ll << 32)) puts("OVERFLOW");else cout << t << '\n';}}}}

http://www.xdnf.cn/news/427519.html

相关文章:

  • rk3576--- HDMI CEC唤醒
  • TCP核心机制
  • 机器学习第八讲:向量/矩阵 → 数据表格的数学表达,如Excel表格转数字阵列
  • 已情感分析入门学习大模型-初级篇
  • MCP-RAG 服务器:完整设置和使用指南
  • Java 集合与 MyBatis 动态 SQL 实战教程
  • 普通项目与 FreeRTOS 项目的异同
  • 【NLP 72、Prompt、Agent、MCP、function calling】
  • 全景系统监控利器:Glances 使用介绍与实战指南
  • 【数据结构】双向链表
  • 开发与AI融合的Windsurf编辑器
  • 屏幕与触摸调试
  • Retrofit vs Feign: 介绍、对比及示例
  • 关于 javax.validation.constraints的详细说明
  • Visual Studio 项目 .gitignore 文件指南
  • 如何界定合法收集数据?
  • 【C++】【设计模式】生产者-消费者模型
  • EDR与XDR如何选择适合您的网络安全解决方案
  • 自我奖励语言模型:突破人类反馈瓶颈
  • WebGIS开发面试题:前端篇(六)
  • 【递归、搜索与回溯】专题一:递归(二)
  • electron 基础知识
  • 软考软件评测师——计算机组成与体系结构(分级存储架构)
  • 当三维地理信息遇上气象预警:电网安全如何实现“先知先觉”?
  • 项目中会出现的css样式
  • MQTT协议详解:物联网通信的轻量级解决方案
  • JMeter同步定时器 模拟多用户并发访问场景
  • Qt进阶开发:QTcpSocket的详解
  • Leetcode 3542. Minimum Operations to Convert All Elements to Zero
  • APISQL免费版安装教程(视频)