Submit solution
Points:
1.70 (partial)
Time limit:
7.5s
Memory limit:
512M
Input:
stdin
Output:
stdout
Problem source:
Problem type
Allowed languages
C, C++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch
Bờm có một mật khẩu rất rất là dài, và nó được ghi trong một tờ giấy.
Thật là lộ liệu và nguy hiểm nếu tờ giấy đó lọt vào tay người khác. Để dấu xâu mật khẩu ~A~ của mình, Bờm đã ghi thêm ~N~ xâu khác -- gọi đó là các xâu ~B_{1}, B_{2}, \dots B_{N}~. Và ghi nhớ một xâu con ~E~ (gồm các kí tự liên tiếp) của ~A~ mà không là xâu con (gồm các kí tự liên tiếp) của bất cứ xâu ~B~ nào. Để khi nhìn lại tờ giấy, Bờm còn biết được đâu mới là mật khẩu của mình. Tất nhiên là Bờm sẽ tìm xâu ~E~ có độ dài nhỏ nhất vì tính dễ quên của mình.
Input
- Dòng đầu tiên là số lượng xâu ghi thêm - ~N~;
- ~N~ dòng tiếp theo, dòng thứ ~i~ ghi xâu ~B_{i}~ khác rỗng;
- Dòng cuối cùng là xâu ~A -~ mật khẩu của Bờm;
Output
- Một dòng duy nhất là xâu ~E~ cần tìm - nếu có nhiều xâu thỏa, hãy in ra xâu có thứ tự từ điển nhỏ nhất.
Giới hạn
- ~LA = Length(A)~ ~\le 1000000~ ~(Length(A)~ là độ dài xâu ~A)~;
- ~S = Length(B_{1}) + Length(B_{2}) + \dots + Length(B_{n})~ ~\le 1000000~;
- Các xâu chỉ gồm chữ cái la tin 'a' ...'z';
- Có ~50\%~ số test LA, ~S \le 100~;
Sample Input
1
abacad
abbcaaa
Sample Output
aa
Comments