Xâm nhập mật khẩu
Xem dạng PDFGần đây, mạng xã hội có sự xâm nhập thông tin người dùng. Sora đã tìm thấy một lỗi xâm nhập tài khoản người dùng đó là: khi bạn nhập bất kỳ chuỗi ký tự có chứa chuỗi con bằng mật khẩu thực tế thì đăng nhập sẽ thành công. Ví dụ: nếu người dùng có mật khẩu abc thì khi nhập một trong các chuỗi abc, abcd hoặc aabcc, hệ thống sẽ đăng nhập thành công.
Yêu cầu: Bạn hãy giúp Sora tính số lượng cặp người dùng khác nhau sao cho người dùng đầu tiên sử dụng mật khẩu riêng của họ, có thể đăng nhập như người dùng thứ hai.
Input
Vào từ tệp PASS.INP gồm:
Dòng đầu tiên chứa số nguyên dương ~N~ ~(1 \le N \le 20000)~ là số lượng người dùng.
~N~ dòng sau chứa mật khẩu của người dùng. Các mật khẩu bao gồm ít nhất một hoặc nhiều nhất là ~10~ chữ cái viết thường của bảng chữ cái Tiếng Anh.
Output
Ghi ra tệp PASS.OUT một dòng duy nhất chứa số lượng cặp người dùng theo yêu cầu nói trên.
Sample Input 1
3
a
b
ab
Sample Output 1
2
Notes
Ví dụ:
Với ~N=3~, các mật khẩu lần lượt là: a, b, ab.
Khi người dùng ~3~ nhập mật khẩu của mình là ab, chuỗi này có chứa chuỗi con a (mật khẩu người dùng ~1~) và cũng chứa chuỗi con b (mật khẩu người dùng ~2~), nên người dùng ~3~ có thể đăng nhập như người dùng ~1~ và như người dùng ~2~.
Do đó có ~2~ cặp là: ~(3,1)~; ~(3,2)~.
Ràng buộc:
~40\%~ số điểm có ~N \le 2000~;
~60\%~ số điểm có ~N \le 20000~.

Bình luận