B Road Band
시간 제한4초메모리 제한1024 MB
두 평행한 도로에 있는 고객 위치와 도로 사이 거리가 주어질 때, 중앙선에 접속점 k개를 놓아 각 고객에서 가장 가까운 접속점까지 거리 제곱의 합을 최소로 만드는 값을 구합니다.
문제
Axes Point 농촌 공동체의 주민은 모두 녹지 공원 띠로 나뉜 두 평행한 도로 중 한 곳에 산다. 최근 지역 감독위원회가 마을에 무선 통신 서비스를 설치하려고 보조금을 받았다. 이 보조금으로 접속 지점 개를 설치할 수 있으며, 감독위원회는 두 주거 도로의 정중앙, 숲이 우거진 띠에 있는 B번 군도로 위에 접속 지점을 일직선으로 배치하기로 했다. 각 사용자와 가장 가까운 접속 지점 사이의 거리가 가능한 한 짧아지도록 배치하려 한다. 구체적으로는 각 사용자와 가장 가까운 접속 지점까지 거리의 제곱을 모두 더한 값을 최소로 만든다.
그림은 고객 여덟 명과 각 고객의 도로상 위치를 보여 주는 두 도로다. 두 도로는 단위 떨어져 있고, 접속 지점 두 개는 두 도로의 정중앙에 놓여 여덟 개의 거리 제곱합이 최소가 되도록 배치되어 있다.

각 도로를 따라 있는 모든 고객의 위치, 두 도로 사이의 거리, 접속 지점의 개수가 주어졌을 때, 달성할 수 있는 거리 제곱합의 최솟값을 구하라.
입력
첫 줄에 정수 , , , 가 주어진다. 과 ()은 각 도로를 따라 있는 고객 수이고, ()는 설치할 접속 지점의 개수, ()는 두 도로 사이의 거리다.
둘째 줄에는 첫 번째 도로를 따라 있는 고객의 위치 ()이 실수 개로 주어진다. 셋째 줄에는 두 번째 도로를 따라 있는 고객의 위치가 실수 개로 주어진다. 둘째 줄과 셋째 줄 각각의 값은 서로 다르지만, 두 줄에 같은 값이 함께 나타날 수 있다. 고객의 위치는 소수점 넷째 자리 이하다.
출력
각 고객과 가장 가까운 접속 지점 개 사이 거리의 제곱을 모두 더한 값의 최솟값을 실수 하나로 출력한다. 절대 오차 또는 상대 오차가 이하이면 정답으로 인정한다.