#include <bits/stdc++.h> using namespace std; pair<int, int> a[200010]; int main() { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); int n; long long k; cin >> n >> k; // 先输入 他们间的 财富值 和 愉悦值 for (int i = 1; i <= n; i ++) cin >> a[i].first; for (int i = 1; i <= n; i ++) cin >> a[i].second; // 先按照 财富值 从小到大排序 sort(a + 1, a + 1 + n); long long sum = 0; long long ans = 1e18; // 滑动窗口 // for (int i = 1; i <= n; i ++) cout << a[i].first << " " << a[i].second<<"\n"; for (int i = 1, j = 1; i <= n; i ++) { while (j <= n && sum < k) { sum += a[j ++].second; } // 筛选最小的隔阂值 if (sum >= k) ans = min(ans, 1ll*a[j - 1].first - a[i].first); sum -= a[i].second; } cout << (ans == 1e18 ? -1 : ans); }