Lặp tên

Xem dạng PDF

Gửi bài giải


Điểm: 0,01 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch

Giải bóng đá trường X có ~N~ đội bóng đăng ký đánh số từ ~1~ đến ~N~. Tên của đội bóng thứ ~i~ là xâu ký tự ~s_i~ gồm các ký tự tiếng Anh in thường, và không có hai đội bóng nào trùng tên. Để tiết kiệm mực in danh sách, trường X quyết định bỏ một số ký tự (có thể là không ký tự nào) khỏi cuối tên của mỗi đội, sao cho sau khi bỏ tên:

  • Không đội bóng nào có xâu tên rỗng.

  • Không có hai đội bóng nào trùng tên.

  • Tổng độ dài các xâu tên của các đội bóng là nhỏ nhất có thể.

Hãy giúp trường X thực hiện việc này nhé!

Input

Dòng đầu tiên gồm một số nguyên dương ~N~ ~(1 \leq N \leq 10^5)~. ~N~ dòng tiếp theo, dòng thứ ~i~ gồm xâu ký tự ~s_i~ gồm các ký tự tiếng Anh in thường. Dữ liệu đảm bảo tổng độ dài tên các đội bóng không vượt quá ~10^5~.

Output

In ra một số nguyên dương duy nhất là tổng độ dài tên các đội bóng sau khi bỏ.

Sample Input 1

4
baba
ab
a
b

Sample Output 1

6

Sample Input 2

6
a
abbb
aab
ba
aa
baaa

Sample Output 2

11

Notes

Giải thích ví dụ

  • Ví dụ 1: Đổi ~baba~ thành ~ba~.

  • Ví dụ 2: Đổi ~abbb~ thành ~ab~, ~ba~ thành ~b~ và ~baaa~ thành ~ba~.


Bình luận

Hãy đọc nội quy trước khi bình luận.