AT_arc125_a [ARC125A] Dial Up
题目描述
有四个完全由 $0$ 和 $1$ 构成的整数序列 $s,t,a,b$,初始时 $s=a$ 且 $b$ 为空。
每次操作时,你可以选择以下操作之一:
- 将 $a$ 的最后一个数放到开头;
- 将 $a$ 的第一个数放到末尾;
- 在 $b$ 的末尾插入 $a_1$。
请输出能够让 $b=t$ 所需的最少操作次数。若无法达成目的,请输出 $-1$。
输入格式
第一行:$s$ 和 $t$ 的长度($\le 2 \times 10^5$)
第二行:$s$
第三行:$t$
输出格式
若目标可实现输出最小操作次数,否则输出 $-1$。
说明/提示
### 制約
- $ 1\ \leq\ N\ \leq\ 2\ \times\ 10^5 $
- $ 1\ \leq\ M\ \leq\ 2\ \times\ 10^5 $
- $ 0\ \leq\ S_i\ \leq\ 1 $
- $ 0\ \leq\ T_i\ \leq\ 1 $
- 入力される値はすべて整数である
### Sample Explanation 1
以下のように $ 6 $ 回操作すればよいです. - $ b $ の末尾に現在の $ a_1 $ の値を追加する.$ b=(0) $ となる. - $ a $ を右シフトする.$ a=(1,0,0) $ となる. - $ b $ の末尾に現在の $ a_1 $ の値を追加する.$ b=(0,1) $ となる. - $ b $ の末尾に現在の $ a_1 $ の値を追加する.$ b=(0,1,1) $ となる. - $ a $ を右シフトする.$ a=(0,1,0) $ となる. - $ b $ の末尾に現在の $ a_1 $ の値を追加する.$ b=(0,1,1,0) $ となる.