#icpc2016autumnc. [icpc2016autumn_c]We Don't Wanna Work!

[icpc2016autumn_c]We Don't Wanna Work!

问题陈述

ACM 是一个编程竞赛组织。ACM 的目的对您来说无关紧要。唯一重要的事情是 ACM 成员的工作风格二分为工作狂和懒汉。

ACM 的每个成员都有一个动力水平。成员根据其动力水平进行排名:动力水平较高的成员排名较高。当有几个成员具有相同的动力水平时,加入 ACM 较晚的成员的排名较高。排名最高的 20% 的成员努力工作,而其他(80%)成员从不工作。请注意,如果 ACM 成员数量的 20% 不是整数,其小数部分将被舍弃。

作为 ACM 的经理,您试图了解每个成员是工作狂还是懒散,并管理 ACM。最后,您成功评估了所有当前成员的动力水平。但是,您的任务还没有完成,因为 ACM 的成员由于成员的流入和流出而每天发生变化。因此,您想要记录成员从工作狂到懒散以及相反的转变。

您会收到一个按照 ACM 加入日期的时间顺序列出的当前 ACM 成员和他们的动力水平的列表。您还会收到一个按照时间顺序列出的成员加入/离开的列表。

您的任务是编写一个程序,计算 ACM 成员工作风格的变化。


输入

输入的第一行包含一个整数 N (1 ≤ N ≤ 50,000),表示 ACM 的初始成员数量。输入的第 (i+1) 行包含一个字符串 si 和一个整数 ai (0 ≤ ai ≤ 10^5),由一个空格分隔。si 表示第 i 个初始成员的姓名,ai 表示第 i 个初始成员的动力水平。每个 si 的字符都是英文字母,1 ≤ |si| ≤ 20。请注意,这些 N 行是按照每个成员加入 ACM 的日期顺序排序的。

输入的第 (N + 2) 行包含一个整数 M (1 ≤ M ≤ 20,000),表示 ACM 成员更改的次数。输入的第 (N + 2 + j) 行包含第 j 个成员加入/离开的信息。当第 j 个信息表示某个成员的入会时,该信息的格式为 "+ tj bj",其中 tj 是加入成员的姓名,bj (0 ≤ bj ≤ 10^5)是他的动力水平。另一方面,当第 j 个信息代表成员退出时,该信息的格式为 "- tj",其中 tj 表示离开成员的姓名。每个 tj 的字符都是英文字母,1 ≤ |tj| ≤ 20。请注意,区分大写字母和小写字母。请注意,这些 M 行是按照事件发生的日期顺序排序的。

不会同时发生两个入会/离会事件。没有两个成员具有相同的姓名,但曾经离开 ACM 的成员可能会再次加入 ACM。


输出

按照时间顺序打印日志中的变化序列。当发生以下四种变化之一时,应打印与更改类型对应的消息,如下所示:

  • 成员 name 开始努力工作: "name is working hard now."
  • 成员 name 开始不工作: "name is not working now."

对于每个成员的入会/离会,变化按照以下顺序发生:

  1. 有些成员加入/离开。
  2. 成员加入时,该成员被添加到工作狂或懒散其中之一。
  3. 有些成员可能从工作狂转变为懒散,反之亦然。请注意,没有两个或更多成员同时改变其工作风格的情况。

样例输入1

4
Durett 7
Gayles 3
Facenda 6
Daughtery 0
1
+ Mccourtney 2```

#### 样例输出1

```plain
Mccourtney is not working now.
Durett is working hard now.

最初,没有成员在工作,因为 4 × 20% < 1。当一个成员加入 ACM 时,Durrett 开始努力工作。


样例输入2

3
Burdon 2
Orlin 8
Trumper 5
1
+ Lukaszewicz 7```

#### 样例输出2

```plain
Lukaszewicz is not working now.```

没有成员在工作。

---

#### 样例输入3

```plain
5
Andy 3
Bob 4
Cindy 10
David 1
Emile 1
3
+ Fred 10
- David
+ Gustav 3```

#### 样例输出3

```plain
Fred is working hard now.
Cindy is not working now.
Gustav is not working now.```

---

#### 样例输入4

```plain
7
Laplant 5
Varnes 2
Warchal 7
Degregorio 3
Chalender 9
Rascon 5
Burdon 0
7
+ Mccarroll 1
- Chalender
+ Orlin 2
+ Chalender 1
+ Marnett 10
- Chalender
+ Chalender 0```

#### 样例输出4

```plain
Mccarroll is not working now.
Warchal is working hard now.
Orlin is not working now.
Chalender is not working now.
Marnett is working hard now.
Warchal is not working now.
Chalender is not working now.
Warchal is working hard now.```

某些成员可能多次加入和离开。

---

#### 样例输入5

```plain
4
Aoba 100
Yun 70
Hifumi 120
Hajime 50
2
- Yun
- Aoba```

#### 样例输出5

```plain
(blank)```