만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

텔레포터

시간 제한2초메모리 제한1024 MB

요약
주파수가 [L, R] 범위에 있는 순간이동기만 쓸 때 두 사람이 만날 수 있는지 확인하고, 만날 수 있으면 최소 불편도를 구합니다.
난이도

어려움10점 중 8점

유형
정수론, 수학, 유니온 파인드
정답자
아직 제출이 없습니다

문제

안나와 베카는 좌표축 위의 서로 다른 지점에 있고, 만나려고 한다. 두 사람이 이동할 수 있는 방법은 텔레포터뿐이다.

텔레포터는 NN개 있다. ii번째 텔레포터는 좌표 cic_i에 있고, 주파수 fif_i로 동작한다. 주파수가 [L,R][L, R] 범위에 있는 텔레포터만 사용할 수 있다.

텔레포터를 한 번 사용하는 데 1분이 걸리며, 사용자는 현재 좌표를 텔레포터 위치를 기준으로 대칭인 좌표로 옮겨 간다. 사용 전 좌표를 x1x_1, 사용 후 좌표를 x2x_2라고 하면 (x1+x2)/2=ci(x_1 + x_2) / 2 = c_i가 성립한다.

매 분 안나와 베카는 사용 가능한 텔레포터 중 하나씩을 반드시 사용해야 한다(같은 텔레포터를 써도 되고 달라도 된다). 텔레포터를 쓰는 동안 두 사람은 각자 사용한 텔레포터 주파수 차이의 절댓값만큼 불편함을 느낀다. 이동 난이도는 전체 이동 중 느낀 불편함의 최댓값으로 정의한다.

QQ개의 시나리오가 주어진다. 각 시나리오마다 사용 가능한 텔레포터로 두 사람이 만날 수 있는지 판단하고, 만날 수 있다면 가능한 이동 난이도의 최솟값을 출력한다. 전체 이동 시간은 답과 무관하다.

각 시나리오는 네 정수로 주어진다.

  • AA: 안나의 시작 좌표
  • BB: 베카의 시작 좌표
  • LL: 사용 가능한 텔레포터의 최소 주파수
  • RR: 사용 가능한 텔레포터의 최대 주파수

입력

첫째 줄에 두 정수 NN과 QQ가 주어진다.

둘째 줄에 NN개의 정수 c1,c2,…,cNc_1, c_2, \dots, c_N이 주어진다.

셋째 줄에 NN개의 정수 f1,f2,…,fNf_1, f_2, \dots, f_N이 주어진다.

이어지는 QQ개의 줄에는 각각 한 시나리오를 나타내는 네 정수 AA, BB, LL, RR이 주어진다. A≠BA \ne B이다.

출력

QQ개의 정수를 공백으로 구분하여 한 줄에 출력한다. jj번째 정수는 jj번째 시나리오의 답이다.

제한

  • 2≤N≤500002 \le N \le 50000
  • 1≤Q≤500001 \le Q \le 50000
  • 1≤fi≤1091 \le f_i \le 10^9
  • −109≤ci,A,B≤109-10^9 \le c_i, A, B \le 10^9
  • 1≤L≤R≤1091 \le L \le R \le 10^9

예제2

  1. 예제 1

    입력
    4 3
    4 6 8 10
    7 1 9 4
    3 11 1 50
    3 11 1 5
    5 7 1 1
    
    예상 출력
    2 3 -1
    
  2. 예제 2

    입력
    3 3
    -2 1 -1
    10 1 3
    -6 6 20 20
    -6 6 0 20
    -6 6 2 20
    
    예상 출력
    -1 2 7