TopCoder

暴力又被TLE
PY派對

User's AC Ratio

100.0% (8/8)

Submission's AC Ratio

87.5% (21/24)

Tags

Description

手機打字的自動完成任務非常好用,大家來算算你最少需要多少次操作才能打完一串字吧!

今天給你一張清單,上面有很多字串,你要依序打出每一個字。
在打每一個字之前,你會先把這個字串加到手機的常用字裡面,然後從第一個字母開始一個字一個字打。
在輸入字串的時候,至少要先輸入一個字母,自動完成系統才會啟動。
一旦你輸入了某個字串,而且常用字裡面只有一個字串的前綴和這個字串匹配,那麼自動完成系統就會自動將字串完成!

假設一開始你的常用字是空的,當你開始打字才會逐一加入,請問你最少要打幾個字母才能打完整張清單呢?

Input Format

第一行有一個正整數 $T$,代表總共有 $T$ 筆測試資料。

接下來有 $T$ 筆測試資料,每筆測試資料的第一行有一個正整數 $N$,代表你現在要打幾個字。

接下來有 $N$ 行,每一行有一個字串,依序代表你要輸入的字串。



$1 \leq T \leq 30$

$1 \leq N \leq 10^ 5$

每一筆測試資料的字串總長度不超過 106

Output Format

對於第 $i$ 筆測試資料,請輸出一行。格式為「Case #i: X」,其中 X 是你要輸入的最少字母數。

Sample Input 1

5
5
hi
hello
lol
hills
hill
5
a
aa
aaa
aaaa
aaaaa
5
aaaaa
aaaa
aaa
aa
a
6
to
be
or
not
two
bee
3
having
fun
yet

Sample Output 1

Case #1: 11
Case #2: 15
Case #3: 11
Case #4: 9
Case #5: 3

Hints

第一筆測試資料中,你會依序輸入 h, he, l, hil, hill,所以總共打了 $11$ 個字。

Problem Source

NEOJ Problem 267

2015 Facebook Hackercup Round 1
* 本題為官方賽後公布的測資,故沒有 subtask。

Subtasks

No. Testdata Range Constraints Score
1 0 100

Testdata and Limits

No. Time Limit (ms) Memory Limit (VSS, KiB) Output Limit (KiB) Subtasks
0 15000 524288 65536 1