QOJ.ac

QOJ

Time Limit: 1.0 s Memory Limit: 512 MB Total points: 100 Hackable ✓

# 9901. 匹配

Statistics

给定一个字符串 $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$。