给定一个字符串 $S$ 和一个与 $S$ 等长的 01 串 $P$,请构造一个非空字符串 $T$($T$ 必须仅包含英文小写字母),满足以下条件:
- 对于 $1 \leq i \leq |S| - |T| + 1$,$P[i] = 1$ 当且仅当 $T$ 作为子串恰好从 $S$ 的下标 $i$ 开始出现;
- 对于 $|S| - |T| + 1 < i \leq |S|$,$P[i] = 0$。
若满足条件的 $T$ 存在,输出任意一个长度不超过 $10^6+1$ 的 $T$(这样的 $T$ 一定存在),否则输出 -1
。
Input
第一行一个由小写英文字母构成的字符串 $S$ ($1 \leq |S| \leq 10^6$)。
第二行一个与 $S$ 等长的 01 串 $P$。
Output
输出一个字符串 $T$ 或 -1
。如果有多种可能的 $T$,你可以任意输出一种。
$T$ 必须仅包含英文小写字母。
Example
input
baaababaab 0001010000
output
aba
input
zqjzqj 000000
output
test
input
zqjzqj 100001
output
-1
explanation
对于第一组样例,$T$ 只可能是 aba。
对于第二组样例,$T$ 不是 $S$ 的子串即可。
对于第三组样例,没有合法的 $T$,因此答案为 -1
。
Scoring
对于 $30\%$ 的测试点: $|S| \leq 10$,且 $S$ 只包含 a 或 b。
对于 $50\%$ 的测试点: $|S| \leq 100$。
对于 $70\%$ 的测试点: $|S| \leq 1000$。
对于 $100\%$ 的测试点: $|S| \leq 10^6$。