CF2145F Long Journey
题目描述
有一条从左到右编号为 $0$ 到 $m$ 的条形区域。你控制一个芯片,起始时位于 $0$ 号格子。
每个格子中都有陷阱,陷阱根据如下规则激活:
- 在第 $1, (1+n), (1+2n), \dots$ 次移动结束时,编号为 $x$,且满足 $x \bmod a_1 = b_1$ 的格子的陷阱会被激活;
- 在第 $2, (2+n), (2+2n), \dots$ 次移动结束时,编号为 $x$,且满足 $x \bmod a_2 = b_2$ 的格子的陷阱会被激活;
- $\cdots$
- 在第 $n, (n+n), (n+2n), \dots$ 次移动结束时,编号为 $x$,且满足 $x \bmod a_n = b_n$ 的格子的陷阱会被激活。
每一回合,你可以选择从当前格子移动到下一个格子,或者停留在当前位置。随后,本回合对应激活规则的陷阱会被激活。如果在某一回合开始时,芯片正位于将要被激活的陷阱的格子上,游戏立即结束。
你的任务是计算,从 $0$ 号格子到达 $m$ 号格子的最少回合数,或者判断是否无解。如果芯片恰好在到达 $m$ 号格子的同一回合结束时,$m$ 号格子的陷阱被激活,那么这不是一个有效的到达 $m$ 的方式。
输入格式
第一行为一个整数 $t$($1 \le t \le 100$),表示测试用例数量。
每个测试用例的第一行为两个整数 $n$ 和 $m$($1 \le n \le 10$,$1 \le m \le 10^{12}$)。
第二行为 $n$ 个整数 $a_1, a_2, \dots, a_n$($2 \le a_i \le 10$)。
第三行为 $n$ 个整数 $b_1, b_2, \dots, b_n$($0 \le b_i < a_i$)。
输出格式
对于每个测试用例,输出一个整数,表示到达 $m$ 号格子的最少回合数。如果无法到达,输出 $-1$。
说明/提示
由 ChatGPT 5 翻译