CF868D Huge Strings
Description
You are given $ n $ strings $ s_{1},s_{2},...,s_{n} $ consisting of characters $ 0 $ and $ 1 $ . $ m $ operations are performed, on each of them you concatenate two existing strings into a new one. On the $ i $ -th operation the concatenation $ s_{ai}s_{bi} $ is saved into a new string $ s_{n+i} $ (the operations are numbered starting from $ 1 $ ). After each operation you need to find the maximum positive integer $ k $ such that all possible strings consisting of $ 0 $ and $ 1 $ of length $ k $ (there are $ 2^{k} $ such strings) are substrings of the new string. If there is no such $ k $ , print $ 0 $ .
Input Format
The first line contains single integer $ n $ ( $ 1
Output Format
Print $ m $ lines, each should contain one integer — the answer to the question after the corresponding operation.
Explanation/Hint
On the first operation, a new string "0110" is created. For $ k=1 $ the two possible binary strings of length $ k $ are "0" and "1", they are substrings of the new string. For $ k=2 $ and greater there exist strings of length $ k $ that do not appear in this string (for $ k=2 $ such string is "00"). So the answer is $ 1 $ .
On the second operation the string "01100" is created. Now all strings of length $ k=2 $ are present.
On the third operation the string "1111111111" is created. There is no zero, so the answer is $ 0 $ .