当前位置:网站首页>Leetcode t1165: log analysis
Leetcode t1165: log analysis
2022-07-07 07:00:00 【Fan Qianzhi】
Log analysis
Title Description
M M M The shipping company recently needs to make statistics on the import and export of goods in its warehouses . At present, the only record they have is a log recording the entry and exit of containers . The log records two types of operations : The first type of operation is container warehousing , And the weight of the container in the warehouse ; The second type of operation is the outbound operation of containers . These records are in strict chronological order . The rules of container warehousing and outbound are first in and last out , That is, the containers to be delivered in each delivery operation are the latest containers to be delivered in the warehouse .
For analytical purposes , The analyst randomly inserts several third types of operations into the log ―― Query operation . When analyzing logs , Every query operation encountered , Report the weight of the largest container in the current warehouse .
Input format
contain N + 1 N+1 N+1 That's ok :
First act 1 1 1 A positive integer N N N, Corresponds to the total number of operations contained in the log .
Next $N $ That's ok , They belong to one of the following three formats :
Format 1 1 1: 0 X 0 X 0X // One container warehousing operation , Positive integer X X X Indicates the weight of the container in this warehouse
Format 2 2 2: 1 1 1 // One container outbound operation ,( For the time being ) The last container in the warehouse leaves the warehouse
Format 3 3 3: 2 2 2 // One query operation , The analyzer is required to output the weight of the largest container in the current warehouse
When the warehouse is empty, you should ignore the issue operation , When the warehouse is empty, you should output 0 0 0.
Output format
The number of output rows is equal to the number of query operations in the log . Each line is a positive integer , Represents the query result .
Examples #1
The sample input #1
13
0 1
0 2
2
0 4
0 2
2
1
2
1
1
2
1
2
Sample output #1
2
4
4
1
0
Tips
about 20 % 20\% 20% The data of , Yes N ≤ 10 N≤10 N≤10;
about 40 % 40\% 40% The data of , Yes N ≤ 1000 N≤1000 N≤1000;
about 100 % 100\% 100% The data of , Yes N ≤ 200000 , X ≤ 1 0 8 N≤200000,X≤10^8 N≤200000,X≤108.
Ideas
This problem is to maintain a stack a[], To achieve it Into the stack 、 Out of the stack 、 Query operation , To meet the requirements of the topic . This stack needs to meet a[i] From the bottom of the stack to i The largest of the elements .
- Push : When you stack an element x,t++,a[t] = max(a[t-1], x)
- Out of the stack :t–
- Inquire about : Output a[t]
The key that the above stack can meet the requirements of the topic is : If you enter an element x Not the largest in the current stack ( Suppose the biggest one is mx), That is, the element that entered before is larger , Then we don't care x What is the value of , Because until it is out of the stack , Will not be visited , Because the number of accesses will be output mx. Here's the picture :
also , The elements at the bottom of the stack are 0, Meet the requirements of the topic : Output when the warehouse is empty 0.
Code
#include<iostream>
#include<cmath>
using namespace std;
int a[200001], t = 0, y, n, ord;
int main() {
a[0] = 0;
cin >> n;
for(int i = 0; i < n; i++) {
cin >> ord;
if(ord == 0) {
cin >> y;
t+=1;
a[t] = max(a[t-1], y);
}
else if(ord == 1) {
if(t > 0) t-=1;
}
else cout << a[t] << endl;
}
return 0;
}
边栏推荐
猜你喜欢
![[GNN] graphic gnn:a gender Introduction (including video)](/img/b3/0855885dafa7afaa7375b8d2195974.png)
[GNN] graphic gnn:a gender Introduction (including video)

JDBC database connection pool usage problem

健身房如何提高竞争力?
![Stack and queue-p78-8 [2011 unified examination true question]](/img/df/72ba22f1953551943494d661a56a3b.jpg)
Stack and queue-p78-8 [2011 unified examination true question]

jdbc数据库连接池使用问题

7天零基础能考证HCIA吗?华为认证系统学习路线分享
![Navicat importing 15g data reports an error [2013 - lost connection to MySQL server during query] [1153: got a packet bigger]](/img/13/096857158c9f977f8677f7cd0f9d4b.png)
Navicat importing 15g data reports an error [2013 - lost connection to MySQL server during query] [1153: got a packet bigger]

Brand · consultation standardization

SolidWorks的GB库(钢型材库,包括铝型材、铝管等结构)安装及使用教程(生成铝型材为例)

场馆怎么做体育培训?
随机推荐
Learning notes | data Xiaobai uses dataease to make a large data screen
化工园区危化品企业安全风险智能化管控平台建设四大目标
Mysql---- import and export & View & Index & execution plan
Installing redis and windows extension method under win system
DHCP路由器工作原理
什么情况下考虑分库分表
快速定量,Abbkine 蛋白质定量试剂盒BCA法来了!
ESXI挂载移动(机械)硬盘详细教程
MySQL的主从复制原理
2018年江苏省职业院校技能大赛高职组“信息安全管理与评估”赛项任务书第二阶段答案
unity3d学习笔记
肿瘤免疫治疗研究丨ProSci LAG3抗体解决方案
请教一下,监听pgsql ,怎样可以监听多个schema和table
使用net core优势/为什么使用
偏执的非合格公司
Prompt for channel security on the super-v / device defender side when installing vmmare
「运维有小邓」符合GDPR的合规要求
How can flinksql calculate the difference between a field before and after update when docking with CDC?
多线程与高并发(9)——AQS其他同步组件(Semaphore、ReentrantReadWriteLock、Exchanger)
Postgresql源码(59)分析事务ID分配、溢出判断方法