QOJ.ac

QOJ

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

#20287. 织金

Statistics

题目描述

织金县位于贵州省毕节市,素有“中国竹荪之乡”的美誉,这里出产的红托竹荪(织金竹荪)被誉为“雪裙仙子”“真菌皇后”。1983年,织金科技人员从野生竹荪菌蕾中成功分离出菌种,开启了人工栽培的历程,如今竹荪已成为织金年综合产值超18亿元的富民支柱产业。

菌农在菌床上分段培育竹荪菌丝。菌农每次能任选一段连续的菌床,让这些菌床的菌丝量各自翻倍。但菌床的承载量有限,超出上限的菌丝会立刻凋亡。每段菌床都有各自的目标菌丝量。菌农想知道,最少要操作多少次,才能让各段菌床都达到目标。

形式化地,设有 $n$ 段菌床,其当前菌丝量依次为 $a_1, a_2, \ldots, a_n$,目标菌丝量依次为 $b_1, b_2, \ldots, b_n$,每段菌床的承载量上限为 $M$。

一次操作中,可选择两个整数 $l$ 和 $r$ ($1 \le l \le r \le n$)。对每个 $i$ ($l \le i \le r$),将第 $i$ 段菌床的菌丝量由 $a_i$ 改为 $\min(2 \cdot a_i, M)$。

求使序列 $a$ 变为序列 $b$ 所需的最少操作次数;若不可能,输出 $-1$。

输入格式

每个测试文件包含多组测试数据。第一行包含测试数据的组数 $T$ ($1 \le T \le 10^4$)。每组测试数据的格式如下。

每组测试数据的第一行包含两个整数 $n$ 和 $M$ ($1 \le n \le 2 \cdot 10^5$, $1 \le M \le 10^9$)。

第二行包含 $n$ 个整数 $a_1, a_2, \ldots, a_n$ ($0 \le a_i \le M$),表示各段菌床当前的菌丝量。

第三行包含 $n$ 个整数 $b_1, b_2, \ldots, b_n$ ($0 \le b_i \le M$),表示各段菌床的目标菌丝量。

保证所有测试数据的 $n$ 之和不超过 $2 \cdot 10^5$。

输出格式

对于每组测试数据,输出使序列 $a$ 变为序列 $b$ 所需的最少操作次数;若不可能,输出一个整数 $-1$。

样例输入 1

2
5 10
1 3 0 6 2
4 10 0 10 8
3 12
3 4 0
12 10 0

样例输出 1

2
-1

样例解释

第一组测试数据中,对区间 $[1, 5]$ 操作两次,菌丝量依次变为 $[2, 6, 0, 10, 4]$、$[4, 10, 0, 10, 8]$,正好达到目标菌丝量。

第二组测试数据中,第 $2$ 段菌床的菌丝量经过任意次操作只能是 $4$、$8$ 或 $12$,永远无法变成 $10$。

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.