TopCoder

User's AC Ratio

100.0% (2/2)

Submission's AC Ratio

100.0% (2/2)

Tags

Description

你現在有一臺吐鈔機,它會不斷地吐出鈔票!但是,在這之前你要確定這個吐鈔機是有好好運作的。這臺吐鈔機所吐出來的每一張鈔票上面都會有一個理論上是唯一的辨識碼,是一個由英文小寫字母組成的字串 $S$($1 \leq |S| \leq 20$)。然而,這個吐鈔機有時候會故障而吐出之前有出現過的辨識碼!

你的工作是負責紀錄這一臺吐鈔機吐了 $N$ ($1 \leq N \leq 10^ 5$)張鈔票後的結果:給每一張新出現的鈔票賦予一個從 $1$ 開始的編號,而如果這一張鈔票已經出現過了,則丟棄之,避免自己偷偷印鈔票這件事露出馬腳。

Input Format

輸入將有 $N + 1$ 行。第一行是一個正整數 $N$($1 \leq N \leq 10^ 5$),代表印了幾張鈔票;接下來的每一行都會有一個字串 $S$ ,代表印出來的鈔票的編碼。保證 $S$ 的長度不超過 $20$,且 $S$ 由小寫英文字母所組成。

Output Format

對於每一個新印出來的鈔票,如果它之前沒有出現過的話,請輸出 TAK x,此處 $x$ 是從 $1$ 開始的編號。否則,請輸出 NIE x,此處 $x$ 是它之前被賦予的編號。如果還是不清楚的話,請參考範例。

Sample Input 1

7
ramen
raaaamen
lamian
ramen
tonkatsu
raamen
charsiu

Sample Output 1

TAK 1
TAK 2
TAK 3
NIE 1
TAK 4
TAK 5
TAK 6

Sample Input 2

5
a
b
c
d
a

Sample Output 2

TAK 1
TAK 2
TAK 3
TAK 4
NIE 1

Hints

Problem Source

ZeroJudge d518: 文字抄寫 II

Subtasks

No. Testdata Range Constraints Score
1 0~1 範例測資 0
2 0~13 無額外限制 100

Testdata and Limits

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