CF704A.Thor

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Thor is getting used to the Earth. As a gift Loki gave him a smartphone. There are nn applications on this phone. Thor is fascinated by this phone. He has only one minor issue: he can't count the number of unread notifications generated by those applications (maybe Loki put a curse on it so he can't).

qq events are about to happen (in chronological order). They are of three types:

  1. Application xx generates a notification (this new notification is unread).
  2. Thor reads all notifications generated so far by application xx (he may re-read some notifications).
  3. Thor reads the first tt notifications generated by phone applications (notifications generated in first tt events of the first type). It's guaranteed that there were at least tt events of the first type before this event. Please note that he doesn't read first tt unread notifications, he just reads the very first tt notifications generated on his phone and he may re-read some of them in this operation.

Please help Thor and tell him the number of unread notifications after each event. You may assume that initially there are no notifications in the phone.

输入格式

The first line of input contains two integers nn and qq ( 1<=n,q<=3000001<=n,q<=300000 ) — the number of applications and the number of events to happen.

The next qq lines contain the events. The ii -th of these lines starts with an integer typeitype_{i} — type of the ii -th event. If typei=1type_{i}=1 or typei=2type_{i}=2 then it is followed by an integer xix_{i} . Otherwise it is followed by an integer tit_{i} ( 1<=typei<=3,1<=xi<=n,1<=ti<=q1<=type_{i}<=3,1<=x_{i}<=n,1<=t_{i}<=q ).

输出格式

Print the number of unread notifications after each event.

输入输出样例

  • 输入#1

    3 4
    1 3
    1 1
    1 2
    2 3
    

    输出#1

    1
    2
    3
    2
    
  • 输入#2

    4 6
    1 2
    1 4
    1 2
    3 3
    1 3
    1 3
    

    输出#2

    1
    2
    3
    0
    1
    2
    

说明/提示

In the first sample:

  1. Application 33 generates a notification (there is 11 unread notification).
  2. Application 11 generates a notification (there are 22 unread notifications).
  3. Application 22 generates a notification (there are 33 unread notifications).
  4. Thor reads the notification generated by application 33 , there are 22 unread notifications left.

In the second sample test:

  1. Application 22 generates a notification (there is 11 unread notification).
  2. Application 44 generates a notification (there are 22 unread notifications).
  3. Application 22 generates a notification (there are 33 unread notifications).
  4. Thor reads first three notifications and since there are only three of them so far, there will be no unread notification left.
  5. Application 33 generates a notification (there is 11 unread notification).
  6. Application 33 generates a notification (there are 22 unread notifications).
首页