CodeForces 567B Berland National Library
2016-04-29 20:31
197 查看
思路:按照题意模拟就好了
Description
Berland National Library has recently been built in the capital of Berland. In addition, in the library you can take any of the collected works of Berland leaders, the library has a reading room.
Today was the pilot launch of an automated reading room visitors' accounting system! The scanner of the system is installed at the entrance to the reading room. It records the events of the form "reader entered room", "reader left room". Every reader is
assigned aregistration number during the registration procedure at the library — it's a unique integer from 1 to 106.
Thus, the system logs events of two forms:
"+ri" — the reader with registration number ri entered
the room;
"-ri" — the reader with registration number ri left
the room.
The first launch of the system was a success, it functioned for some period of time, and, at the time of its launch and at the time of its shutdown, the reading room may already have visitors.
Significant funds of the budget of Berland have been spent on the design and installation of the system. Therefore, some of the citizens of the capital now demand to explain the need for this system and the benefits that its implementation will bring. Now,
the developers of the system need to urgently come up with reasons for its existence.
Help the system developers to find the minimum possible capacity of the reading room (in visitors) using the log of the system available to you.
Input
The first line contains a positive integer n (1 ≤ n ≤ 100) — the number of records in the system log. Next follow n events
from the system journal in the order in which the were made. Each event was written on a single line and looks as "+ri"
or "-ri", where ri is
an integer from 1 to 106, the registration number of the visitor (that is, distinct visitors always have distinct
registration numbers).
It is guaranteed that the log is not contradictory, that is, for every visitor the types of any of his two consecutive events are distinct. Before starting the system, and after stopping the room may possibly contain visitors.
Output
Print a single integer — the minimum possible capacity of the reading room.
Sample Input
Input
Output
Input
Output
Input
Output
Hint
In the first sample test, the system log will ensure that at some point in the reading room were visitors with registration numbers 1,1200 and 12001.
More people were not in the room at the same time based on the log. Therefore, the answer to the test is 3.
#include<bits/stdc++.h> using namespace std; map<int,int>mark; int main() { int n; scanf("%d",&n); int now=0,tip=0,ans=0; for (int i = 0;i<n;i++) { string s; cin >> s; int k; scanf("%d",&k); if (s[0] == '+') { if (tip>0) { tip--; mark[k]=1; } else { now++; mark[k]=1; } } else { if (mark[k]==1) mark[k]=0,tip++; else now++,tip++; } ans = max(ans,now); } printf("%d\n",ans); }
Description
Berland National Library has recently been built in the capital of Berland. In addition, in the library you can take any of the collected works of Berland leaders, the library has a reading room.
Today was the pilot launch of an automated reading room visitors' accounting system! The scanner of the system is installed at the entrance to the reading room. It records the events of the form "reader entered room", "reader left room". Every reader is
assigned aregistration number during the registration procedure at the library — it's a unique integer from 1 to 106.
Thus, the system logs events of two forms:
"+ri" — the reader with registration number ri entered
the room;
"-ri" — the reader with registration number ri left
the room.
The first launch of the system was a success, it functioned for some period of time, and, at the time of its launch and at the time of its shutdown, the reading room may already have visitors.
Significant funds of the budget of Berland have been spent on the design and installation of the system. Therefore, some of the citizens of the capital now demand to explain the need for this system and the benefits that its implementation will bring. Now,
the developers of the system need to urgently come up with reasons for its existence.
Help the system developers to find the minimum possible capacity of the reading room (in visitors) using the log of the system available to you.
Input
The first line contains a positive integer n (1 ≤ n ≤ 100) — the number of records in the system log. Next follow n events
from the system journal in the order in which the were made. Each event was written on a single line and looks as "+ri"
or "-ri", where ri is
an integer from 1 to 106, the registration number of the visitor (that is, distinct visitors always have distinct
registration numbers).
It is guaranteed that the log is not contradictory, that is, for every visitor the types of any of his two consecutive events are distinct. Before starting the system, and after stopping the room may possibly contain visitors.
Output
Print a single integer — the minimum possible capacity of the reading room.
Sample Input
Input
6 + 12001 - 12001 - 1 - 1200 + 1 + 7
Output
3
Input
2 - 1 - 2
Output
2
Input
2 + 1 - 1
Output
1
Hint
In the first sample test, the system log will ensure that at some point in the reading room were visitors with registration numbers 1,1200 and 12001.
More people were not in the room at the same time based on the log. Therefore, the answer to the test is 3.
相关文章推荐
- listview点击Item的传值跳转页面的实现和findViewByiId的NullPointerException
- 最短路
- CodeForces 567A Lineland Mail
- 搭建https+nginx服务器
- 大教堂和市集
- linux redhat 6.4 下安装Scrapy 1.0
- 冲刺第五天
- poj 3450 Corporate Identity
- 图的存储结构-邻接表
- HDU - 1114 Piggy-Bank (完全背包)
- 【Swift学习】Swift编程之旅---Subscripts下标(十六)
- 冲刺第四天
- Mysql优化技巧
- Windows线程创建、退出及资源释放
- 十、命令设计模式
- 美式足球
- 轻松搞定java内存模型(二)类的加载以及初始化
- ACboy 再次需要你的帮助
- hdu 1789 Doing Homework again
- 协方差矩阵计算