奇葩的题目的奇葩题解-colopl2018_final_b
题目重述:
其实就是一个奇葩的前缀表达式(类似),让你转换为正常入可以康懂的格式(中缀表达式),但是这个式子和前缀表达式的区别如下:
- 有新符号就更新,直到出了这个括号(遇到')'了),就把最新的踢出去
- 遇到逗号改为最新符号
- 数字的前导零照常输出
我们可以康到,由于规则三和规则二都提醒我们可以原封不动的用字符串处理,由于规则一中找到新的就要踢出去的原则,sui我们应该用一个栈来记录符号
代码的情况无非四种:
- 数字和左括号,这些就可以直接输出
- 逗号,就用st.top()直接输出即可
- 运算符号,直接添加到栈里
- 否则(a也就是右括号)就zhi——接将最新的符号去掉(st.pop())然后照常输出右括号即可
终于到了大家期待的damn码展示环节(注释有点鬼畜,还有个人压行症晚期请见谅qwq):
#include<bits/stdc++.h>
using namespace std;
stack<char> st;
int main()
{
string s;
cin>>s;//输入,这里没空格,不需要用getline
for(auto i:s)//大人,时代变了(bushi),C++11的新特性,比又臭又长的C++98遍历好了太多
{
if(i=='('||i<='9'&&i>='0')cout<<i;//数字跳过,注意是&&不是||否则就成复读坤了qwq
else if(i==',')cout<<st.top();//现在的最后一个符号进行输出
else if(i=='+'||i=='-'||i=='*'||i=='/')st.push(i);//更新符号
else
{
st.pop();//哈哈,你的那套已经补管用了,还是用之前的ba
cout<<")";
}
}
return 0;
}
完结撒花
奇葩的题目的奇葩题解-colopl2018_final_b的更多相关文章
- 2017 ACM Arabella Collegiate Programming Contest div2的题,部分题目写个题解
F. Monkeying Around 维护点在多少个线段上 http://codeforces.com/gym/101350/problem/F 题意:有m个笑话,每个笑话的区间是[L, R], ...
- 有一种acm题目叫做,奇葩!
本文全然没有技术含量,纯粹是娱乐. 我事实上想写点东西.可是近期好像做计算几何做得太多了,一种想说说不出东西的感觉,唯有写一下一些奇葩的题目了. HDU3337:Guess the number pi ...
- NOIP提高组题目归类+题解摘要(2008-2017)
因为前几天作死立了一个flag说要把NOIP近十年的题目做一做,并写一个题目归类+题解摘要出来,所以这几天就好好的(然而还是颓废了好久)写了一些这些往年的NOIP题目. 这篇博客有什么: 近十年NOI ...
- 网易游戏QA工程师笔试回忆-2012.9【个人题解】
========================转帖======================== 网易游戏QA工程师笔试回忆-2012.9 刚刚从武大回来,趁热回忆下题目,给以后的XDJMs参考. ...
- [AC自动机]题目合计
我只是想记一下最近写的题目而已喵~ 题解什么的才懒得写呢~ [poj 1625]Censored! 这题注意一个地方,就是输入数据中可能有 ASCII 大于 128 的情况,也就是说用 char 读入 ...
- cojs 安科赛斯特 题解报告
QAQ 从IOI搬了一道题目过来 官方题解貌似理论上没有我的做法优,我交到BZOJ上也跑的飞快 结果自己造了个数据把自己卡成了4s多,真是忧桑的故事 不过貌似原题是交互题,并不能离线 说说我的做法吧 ...
- 洛谷P1066 2^k进制数(题解)(递推版)
https://www.luogu.org/problemnew/show/P1066(题目传送) (题解)https://www.luogu.org/problemnew/solution/P106 ...
- 算法(第四版)C# 习题题解——3.1
写在前面 整个项目都托管在了 Github 上:https://github.com/ikesnowy/Algorithms-4th-Edition-in-Csharp 查找更方便的版本见:https ...
- 算法(第四版)C# 习题题解——2.5
写在前面 整个项目都托管在了 Github 上:https://github.com/ikesnowy/Algorithms-4th-Edition-in-Csharp 查找更方便的版本见:https ...
- 算法(第四版)C# 习题题解——2.4
写在前面 整个项目都托管在了 Github 上:https://github.com/ikesnowy/Algorithms-4th-Edition-in-Csharp 查找更方便的版本见:https ...
随机推荐
- SQL Server 2008~2022版本序列号/密钥/激活码 汇总
SQL Server 2008~2022版本序列号/密钥/激活码 汇总 - 重庆熊猫 - 博客园 (cnblogs.com) SQL Server 2022# Enterprise: J4V48-P8 ...
- C# 不写模型定义一个函数类 (类似匿名函数)
可能有点词不达意,我是这样理解的,如果有不对,请大家指点一二.通过查资料发现这个只有在C# 7.0 中才有的,慎用 在使用前需要引用 System.ValueTuple (bool state, st ...
- vue3的defineProps使用外部类型
历史问题 这不是 Ts 的问题,而是 Vue 宏 defineProps 局限性, interface IProps { name: { type: String, default: "zh ...
- express的默认Cache-Control
express渲染页面一共有三种方式:将页面作为静态资源 express.static.res.sendFile.res.render. 其中前两种方式都会有默认缓存 Cache-Control: p ...
- Delaunay 三角化 学习3
简介 还是太菜从解析官方代码开始. 官方代码共有三个核心函数. 参考链接 http://blog.sina.com.cn/s/blog_6029f0330101irlh.html http://pau ...
- java 利用反射调试GUI
简介 java核心编程个出的代码只要通过 EventTrace tracer = new EventTracer(); tracer.add(frame) 就可以跟踪事件了 code /* * @Au ...
- java 数据传递? 两个对话框之间
简介 java 数据传递,简单通过类对象传递? 两个对话框之间 Q&A 但是不知道是如何实现模态的对话框的,看了几遍也还不知道? JDialog 第二个参数就是模态和非模态的选择 code p ...
- Day12 备战CCF-CSP练习
Day 12 题目描述 西西艾弗岛上共有 \(n\) 个仓库,依次编号为 \(1∼n\). 每个仓库均有一个 \(m\) 维向量的位置编码,用来表示仓库间的物流运转关系. 具体来说,每个仓库 \(i\ ...
- 试用完几十款ETL工具后的经验总结,ETL工具用这三款就足够了
1.ETL选型前言 市面上ETL工具国内外加起来估计得有30种之多,其中近20款工具都花时间试用过,现在把试用后总结出来的经验分享一下,目前很多企业在选择ETL工具时不知道怎么选择适合自己的工具也不可 ...
- FFmpeg开发笔记(七十五)使用qrencode和quirc对视频画面读写二维码
上一篇文章<Windows给FFmpeg集成二维码图像的编解码器>介绍了给FFmpeg集成二维码的编解码器qrencode和quirc,接下来讲解如何利用编码器qrencode向视频画面添 ...