Codeforces Round 806 (Div. 4) |
---|
Закончено |
Вам даны $$$n$$$ строк $$$s_1, s_2, \dots, s_n$$$ длины не более $$$\mathbf{8}$$$.
Для каждой строки $$$s_i$$$, проверьте, существуют ли такие $$$s_j$$$ и $$$s_k$$$, что $$$s_i = s_j + s_k$$$. То есть определите, является ли $$$s_i$$$ конкатенацией $$$s_j$$$ и $$$s_k$$$. Обратите внимание, что $$$j$$$ может быть равным $$$k$$$.
Напомним, что конкатенацией строк $$$s$$$ и $$$t$$$ называется строка $$$s + t = s_1 s_2 \dots s_p t_1 t_2 \dots t_q$$$, где $$$p$$$ и $$$q$$$ длины строк $$$s$$$ и $$$t$$$ соответственно. Например, конкатенация строк «code» и «forces» равна «codeforces».
Первая строка содержит одно число $$$t$$$ ($$$1 \leq t \leq 10^4$$$) — количество наборов входных данных.
Первая строка каждого набора содержит число $$$n$$$ ($$$1 \leq n \leq 10^5$$$) — количество строк.
Затем следуют $$$n$$$ строк, $$$i$$$-я из которых содержит непустую строку $$$s_i$$$ длины не более $$$\mathbf{8}$$$, состоящую из строчных английских букв. Среди заданных $$$n$$$ строк могут быть одинаковые.
Сумма $$$n$$$ по всем наборам не превосходит $$$10^5$$$.
Для каждого набора выведите бинарную строку длины $$$n$$$. $$$i$$$-й бит строки должен равняться $$$\texttt{1}$$$ если существуют две строки $$$s_j$$$ и $$$s_k$$$ таких, чтобы $$$s_i = s_j + s_k$$$, или же $$$\texttt{0}$$$ в противном случае. Обратите внимание, что $$$j$$$ может совпадать с $$$k$$$.
35ababababcabacbc3xxxxxx8codeforcescodescodforcforcesecode
10100 011 10100101
В первом наборе мы имеем следующее:
Название |
---|