Description

bearrrrrrrro的綽號們

題目敘述

bearrrrrro是個很聰明的人。他除了很會寫程式之外,還常常在各個科目電爆大家,像是數學物理英文日文。他因此有了許多綽號,像是「電熊」、「卷熊」、等等。他還有一些相似的綽號,像是"bearo","bearrrrro","bearrrrrrrro","bearrro"。有天,電熊在上課的時候很無聊,因為他都會了。卷熊決定來認真數他有幾個綽號來消磨時間。又因為電熊實在是太電了,他花不到0.0000001毫秒就數完了。電熊數完之後,心裡想:「完蛋了,還有好久才要下課喔⋯⋯那不然我來一個一個慢慢數每個綽號有幾個人叫好了。」於是卷熊決定在紙上一條一條地列出來,再慢慢數有每個綽號有幾個人叫。因為電熊實在不習慣一條一條列,所以他可能列到一半會突然發現前面有列錯的。你的任務就是對他紙上的紀錄做一些操作。

輸入

第一行包含一個數字 $n( n \leq 1000 )$,代表接下來有 $n$ 幾次操作。

第 $2$ ~ $n+1$ 行的格式如下:

$1$ $a$ 多一個人叫 $a$ 這個綽號,a 不會是空字串

$2$ $a$ 電熊列錯了,少一個人叫 $a$ 這個綽號。如果這個綽號已經沒有人叫的話,電熊會把這個綽號從紙上擦掉。

$3$ 照綽號的「字典序」列出目前在紙上的綽號和有幾個人叫。若目前紙上沒有任何綽號請不要印任何東西。每個綽號印一行。

$4$ 印出目前在紙上總共有幾種不同的綽號

紙上剛開始沒有任何綽號。保證沒有任何不合法的操作。

輸出

參考範例輸出們

範例輸入輸出

範例輸入 I

16
3
1 a
1 b
1 c
4
2 b
3
1 b
3
4
1 a
1 a
2 a
3
2 a
4

範例輸出 I

3
a 1
c 1
a 1
b 1
c 1
3
a 2
b 1
c 1
3

範例輸入 II

19
4
3
1 bearo
1 bearo
1 bearrrrrro
1 bearrrro
3
4
2 bearrrrrro
3
4
1 bearrrrro
3
2 bearo
2 bearo
2 bearrrro
2 bearrrrro
3
4

範例輸出 II

0
bearo 2
bearrrro 1
bearrrrrro 1
3
bearo 2
bearrrro 1
2
bearo 2
bearrrro 1
bearrrrro 1
0

Hint

n = int(input())
dic = {}
for _ in range(n):
    inputs = input().split()
    op = int(inputs[0])
    if op == 1:
        nickname = inputs[1]
        """
        ADD YOUR CODE HERE
        """
    elif op == 2:
        nickname = inputs[1]
        """
        ADD YOUR CODE HERE
        """
    elif op == 3:
        """
        ADD YOUR CODE HERE
        ans = [] # 把(key, value)當成tuple放進來
        """
        ans.sort()
        for key, value in ans:
            print(key, value)
    elif op == 4:
        """
        ADD YOUR CODE HERE
        """

Input Format

Output Format

Hints

Problem Source

NEOJ Problem 3035

Subtasks

No. Testdata Range Constraints Score
1 0 10
2 1 10
3 2 10
4 3 10
5 4 10
6 5 10
7 6 10
8 7 10
9 8 10
10 9 10

Testdata and Limits

No. Time Limit (ms) Memory Limit (VSS, KiB) Output Limit (KiB) Subtasks
0 1000 65536 65536 1
1 1000 65536 65536 2
2 1000 65536 65536 3
3 1000 65536 65536 4
4 1000 65536 65536 5
5 1000 65536 65536 6
6 1000 65536 65536 7
7 1000 65536 65536 8
8 1000 65536 65536 9
9 1000 65536 65536 10