Một phần mềm quản lý tại công ty B-SOFT được một nhân viên phát hiện ra lỗi bảo mật rất thú vị. Phần mềm này phục vụ cho \(N\) nhân viên trong công ty, mỗi nhân viên có một tài khoản đi kèm với một mật khẩu để đăng nhập vào hệ thống nhưng trong một số trường hợp, nhân viên này có thể dùng mật khẩu của mình để đăng nhập vào tài khoản của nhân viên khác nếu chuỗi ký tự mật khẩu của nhân viên này chứa chuỗi con (các ký tự liên tiếp nhau) là mật khẩu của nhân viên kia. Giám đốc công ty muốn biết mật khẩu mỗi người có thể dùng để truy cập được bao nhiêu tài khoản của người khác.
Yêu cầu: Bạn hãy giúp Giám đốc công ty B-SOFT giải quyết bài toán trên.
Dữ liệu vào: Từ tệp văn bản PASSWORD.INP gồm:
+ Dòng đầu ghi số nguyên dương \(N\) \(\ (1 \leq N \leq 10000)\).
+ Dòng thứ \(i\ (i = 1\ldots N)\) trong \(N\) dòng tiếp theo, mỗi dòng ghi một xâu ký tự gồm các chữ cái thường trong bảng chữ cái tiếng Anh có độ dài không vượt quá 10.
Kết quả: Ghi ra tệp văn bản PASSWORD.OUT trên \(N\) dòng, với dòng thứ \(i\ (i = 1\ldots N)\) là số lượng tài khoản (không kể tài khoản của mình) mà người thứ \(i\) có thể đăng nhập được vào hệ thống bằng mật khẩu của mình.
Ví dụ:
PASSWORD.INP | PASSWORD.OUT | PASSWORD.INP | PASSWORD.OUT | |
---|---|---|---|---|
3 a a ab | 1 1 2 | 5 mad madam da m a | 2 4 1 0 0 |
Giới hạn:
Có 50% số điểm với \(N \leq 1000\)
Có 50% số điểm với \(1000 < N \leq 10000\)
Code tích cực |
---|
Trong 24h |
|
Trong 7 ngày |
|
Trong 30 ngày |
|
Thống kê |
---|
AC/Sub: 97887/180710 Pascal: 17121 C++: 130348 Python: 33199 Lượt xem/tải tests: 38905 |