#758. Virus nhị phân (BINVIRUS)

Bộ nhớ: 512 MiB Thời gian: 1000 ms Nhập/xuất từ luồng chuẩn
Kiểu bài: Thông thường Kiểu chấm: So sánh văn bản
Đưa lên bởi: Trùm CUỐI

Đề bài

Ủy ban kiểm duyệt virus nhị phân gần đây đã phát hiện ra quy luật sau: một số chuỗi nhị phân xác định là mã virus. Nếu một đoạn mã không chứa bất kỳ đoạn mã virus nào, thì ta gọi đoạn mã đó là an toàn. Hiện tại, ủy ban đã tìm ra tất cả các đoạn mã virus, hãy hỏi xem liệu có tồn tại một đoạn mã nhị phân an toàn dài vô hạn hay không.

Ví dụ: Nếu \{011, 11, 00000\} là các đoạn mã virus, thì một đoạn mã an toàn dài vô hạn có thể là 010101\cdots . Nếu \{01, 11, 000000\} là các đoạn mã virus, thì không tồn tại đoạn mã an toàn dài vô hạn nào.

Hãy viết một chương trình đọc vào các mã virus, xác định xem có tồn tại một đoạn mã an toàn dài vô hạn hay không và xuất kết quả.

Dữ liệu:

  • Dòng đầu tiên gồm một số nguyên n , biểu thị số lượng đoạn mã virus.
  • n dòng tiếp theo, mỗi dòng chứa một chuỗi nhị phân 01 khác rỗng — đó chính là một đoạn mã virus.

Kết quả:

  • Dòng đầu tiên xuất ra một từ. Nếu tồn tại đoạn mã như vậy, xuất TAK, ngược lại xuất NIE.

Ví dụ:

Dữ liệu:

3
01
11
00000

Kết quả:

NIE

Giới hạn: tổng độ dài của tất cả các đoạn mã virus không vượt quá 3\times 10^4 .