Calligraphy practice


Submit solution

Points: 2.5
Time limit: 1.0s
Memory limit: 256M

Author:
Problem type

Calligraphy là nghệ thuật viết chữ đẹp phương Tây. Hiện tại đang rất được yêu thích ở Việt Nam và trên toàn thế giới.

Calligraphy có xuất phát từ tiếng Hy Lạp cổ đại, là nghệ thuật thị giác gắn liền với chữ viết.

Chữ viết không chỉ truyền tải nội dung, thông điệp của con người mà nó còn là nghệ thuật.

Tú Anh rất thích bộ môn này và đã có rất nhiều loại bút với rất nhiều màu sắc để luyện tập.

Bạn ấy nhận được \(n\) xâu kí tự, mỗi xâu gồm các chữ cái Tiếng Anh in thường. Để luyện viết hiệu quả, bạn ấy cần đoạn văn bản có đầy đủ các chữ cái từ \(a - z\). Do đó cần chọn ra một số xâu trong \(n\) xâu đó sao cho sau khi ghép tất cả chúng lại, ta được một xâu mới bao gồm đầy đủ các kí tự trong bảng chữ cái Tiếng Anh. Hãy đếm số cách để thực hiện yêu cầu trên (hai cách được coi là khác nhau khi một xâu được chọn trong cách này không được chọn trong cách kia).

Input

Dòng đầu tiên chứa số nguyên dương \(n (n \le 20)\) miêu tả số lượng xâu.

\(n\) dòng tiếp theo mỗi dòng chứa một xâu ký tự \(S (|S| \le 30)\) gồm các chữ cái Tiếng Anh in thường.

Output

In ra một số nguyên là kết quả bài toán

Example 1

Sample Input 1

8
the
quick
brown
fox
jumps
over
lazy
dog

Sample Output 1

1

Example 2

Sample Input 2

3
a
b
abcdefghijklmnopqrstuvwxyz

Sample Output 2

4

Giải thích: \(4\) cách chọn thỏa mãn là {abcdefghijklmnopqrstuvwxyz}, {a, abcdefghijklmnopqrstuvwxyz}, {b, abcdefghijklmnopqrstuvwxyz}, {a, b, abcdefghijklmnopqrstuvwxyz}


Comments

There are no comments at the moment.