딕 대스터들리(Dick Dastardly)는 곧은 직선 능선을 따라 사는 두더지들을 괴롭히려 한다. 능선에는 두더지 굴 n개가 일직선으로 늘어서 있으며, 서쪽에서 동쪽 방향으로 1번부터 n번까지 번호가 매겨져 있다. 1번 굴은 원점(거리 0)에 있고, i번 굴(2≤i≤n)은 1번 굴에서 동쪽으로 xi미터 떨어진 곳에 있으며 x2<x3<⋯<xn을 만족한다.
딕은 능선을 따라 CD 플레이어 m개를 놓았다. j번째 플레이어는 1번 굴에서 동쪽으로 zj미터 떨어진 곳에 있다. 각 플레이어는 자신으로부터 l미터 이내에 있는 모든 굴을 방해한다. 즉, 1번 굴로부터의 거리가 p인 굴은 거리가 z인 어떤 플레이어에 대해 ∣p−z∣≤l일 때 그 플레이어에게 방해를 받는다. 어떤 굴이 적어도 하나의 플레이어에게 방해받으면 그 굴의 두더지는 잠을 잘 수 없다.
d일 동안 플레이어들이 재배치된다. i일째 아침에 딕은 현재 1번 굴로부터 pi미터 떨어진 곳에 있는 플레이어를 1번 굴로부터 ri미터 떨어진 지점으로 옮긴다. 매 이동 직전에 위치 pi에는 정확히 하나의 플레이어가 있고 위치 ri에는 플레이어가 없음이 보장된다.
요구되는 각 시점에서 두더지가 잠들 수 없는 굴의 개수를 구하라.
첫째 줄에 네 정수 n, m, d, l (2≤n,m≤500000, 1≤d≤500000, 1≤l≤109)이 주어진다. 각각 굴의 개수, CD 플레이어의 개수, 날의 수, 플레이어의 사정거리이다.
둘째 줄에 n−1개의 정수 x2,x3,…,xn (0<x2<x3<⋯<xn≤109)이 주어진다. 2,3,…,n번 굴의 1번 굴로부터의 거리이다.
셋째 줄에 m개의 정수 z1,z2,…,zm (0≤z1<z2<⋯<zm≤109)이 주어진다. CD 플레이어들의 1번 굴로부터의 거리이며, 모든 플레이어는 1번 굴의 동쪽에 있다.
이어지는 d개의 줄 중 i번째 줄에는 두 정수 pi와 ri (0≤pi,ri≤109, pi=ri)가 주어진다. i일째에 거리 pi에 있는 플레이어를 거리 ri로 옮긴다는 뜻이다. 매 이동 직전에 위치 pi에는 플레이어가 존재하고 위치 ri에는 플레이어가 없음이 보장된다.
d+1개의 줄을 출력한다. i=1,2,…,d에 대해 i번째 줄에는 i번째 이동을 하기 직전 상태에서 두더지가 잠들 수 없는 굴의 개수를 출력한다. d+1번째 줄에는 마지막 이동을 마친 후의 개수를 출력한다.
(다시 말해, 처음 배치의 개수를 먼저 출력하고, d번의 이동을 순서대로 적용할 때마다 새로 생긴 개수를 출력하면 된다.)