zoukankan
html css js c++ java
HDU3350 #define is unsafe 栈的应用
//数据结构-栈的应用 #include<iostream> #include<string> #include<vector> using namespace std; struct node { int value;//值 int add;//+的次数 }; //用容器实现栈的FILO vector<node> ans;//数值栈 vector<char> sig;//符号栈 int main() { int t, i; string str; node temp, temp2; cin>>t; while(t--) { cin>>str; temp.value = 0; temp.add = 0; sig.clear(); ans.clear(); for(i = 0; i < str.length(); i++) { //逐字打扫,只有'('、'+'、 ','、')'和数字是有用的,"MAX"不用处理 //优先级:'(' > '+' > ',' > ')' switch (str[i]) { case '(': sig.push_back(str[i]); temp.value = 0; temp.add = 0; break; case '+': ans.push_back(temp); sig.push_back(str[i]); temp.value = 0; temp.add = 0; break; case ',': while(!sig.empty() && sig.back() == '+') { temp2 = ans.back(); temp.value = temp.value + temp2.value; temp.add = temp.add + 1 + temp2.add; ans.pop_back(); sig.pop_back(); } ans.push_back(temp); sig.push_back(str[i]); temp.value = 0; temp.add = 0; break; case ')': while(!sig.empty() && sig.back() == '+') { temp2 = ans.back(); temp.value = temp.value + temp2.value; temp.add = temp.add + 1 + temp2.add; ans.pop_back(); sig.pop_back(); } temp2 = ans.back(); if(temp2.value > temp.value) { temp.value = temp2.value; temp.add = temp2.add * 2 + temp.add; } else { temp.add = temp.add * 2 + temp2.add; } sig.pop_back();sig.pop_back(); ans.pop_back(); break; case '0':case '1':case '2':case '3':case '4':case '5':case '6':case '7':case '8':case '9': temp.value = temp.value * 10 + str[i] - '0'; break; } } while(!sig.empty() && sig.back() == '+') { temp2 = ans.back(); temp.value = temp.value + temp2.value; temp.add = temp.add + 1 + temp2.add; ans.pop_back(); sig.pop_back(); } cout<<temp.value<<' '<<temp.add<<endl; } return 0; }
查看全文
相关阅读:
Kubernetes(K8S)集群部署搭建图文教程(最全)
Kubernetes核心原理和搭建
Navicat Premium 15注册出现“rsa public key not find”
centos 7永久修改主机名
docker 部署jenkins,及构建执行scp指令,一直处于构建状态以及钉钉通知配置
jenkins 无法连接仓库:Command /usr/bin/git ls-remote -h
mysql 8.0安装包下载地址
centos7安装xtrabackup 物理备份工具与使用
Linux vi/vim编辑器
解决报错docker 启动报 WARNING: IPv4 forwarding is disabled. Networking will not work.
原文地址:https://www.cnblogs.com/windmissing/p/2559882.html
最新文章
学习总结8
学习总结7
调研数据分析
虚拟机重启网卡未正常启动
Dokcer run 的一些选项详解
Dockerfile中的RUN、CMD 和 ENTRYPOINT指令的两种格式(shell与exec)
nginx编译安装之-./configure 参数详解
Dockerfile基于alpine 制作nginx1.18.0镜像
Dockerfile常用指令介绍
Centos 7 设置时区和修改时间
热门文章
Kubernetes零基础快速入门!初学者必看!
Kubernetes 入门与进阶实战
Docker 高版本降低指定版本
卸载和重装docker的方式
Docker-安装稳定版及指定版本
yum命令跳过特定(指定)软件包升级方法
docker images导出及导入
Jenkins时区设置为北京时间
SNAT和DNAT的区别
kubernetes
Copyright © 2011-2022 走看看