#R1013. [KBC001E] Clone

[KBC001E] Clone

题目描述

小 A 和小 B 正在写作业。今天的作业共有 nn 道题,对于第 ii 道题,小 A 需要花费 aia_i 的时间才能做出,而小 B 则需要花费 bib_i 的时间。因为作业实在是太多了,所以两人决定今天只完成其中某一些,并且被完成的题目编号是连续的。

为了快速完成所有题目,小 A 和小 B 甚至学会了分身术,可以同时进行多道题目。

两人决定在写完作业后去吃水果。当小 B 完成今天所有的计划题目后,才会前往吃水果 ,但小 A 只要自己的任意一个分身完成了分配的题目,就会立刻前往吃水果。

而小 A 只需要花费 kk 时间就能吃完所有的水果,小 A 想通过决定题目区间的方法,来吃完所有水果,而不让小 B 吃到水果。同时他还想要自己写的题目总数尽可能少。你能帮他算出最少要写几道题吗?

简化题意

给定 n,kn,k 和序列 a,ba,b。寻找最短区间 [i,j][i,j] 使得 $\displaystyle(\min_{p=i}^ja_p)+k\leq\max_{p=i}^jb_p$。输出区间长度,若找不到区间输出 1-1

输入格式

输入以以下格式从标准输入给出:

$n\ \ k\\a_1\ \ a_2\ \ \cdots\ \ a_n\\b_1\ \ b_2\ \ \cdots\ \ b_n$

输出格式

一个整数,表示小 A 最少要写多少题。如果不存在方案,则输出 1-1

样例 #1

样例输入 #1

5 10
8 7 14 8 3
4 2 5 8 2

样例输出 #1

-1

样例 #2

样例输入 #2

5 14
11 22 3 15 6
21 20 17 22 136

样例输出 #2

1

提示

样例 2\bm 2 解释:区间为 [3,3][3,3][5,5][5,5];因为 a3+k=3+14=17a_3+k=3+14=17a5+k=6+14=20<136a_5+k=6+14=20\lt136

  • 1n1051\le n\le 10^5
  • 1k1061\le k\le 10^6
  • 1ai,bi1061\le a_i,b_i\le 10^6