#include #include #include using namespace std; int main(void) { int N; size_t K; scanf("%d%lu", &N, &K); vector a(N), b(N); vector v(N*2); for(int i=0, j=0; i w = v; sort(w.begin(), w.end()); w.erase(unique(w.begin(), w.end()), w.end()); vector imos(N*2 + 1); for(int i=0, j=0; i 1) { int md = (lo + hi) / 2; dif = md - w[i]; ncnt = cnt + dif * imos[i]; if(ncnt < K) { lo = md; } else { hi = md; } } printf("%d\n", lo); return 0; } } puts("-1"); return 0; }