페이지가 로드되지 않나요? 여기를 눌러보면 고쳐질 수도 있어요.
Placeholder

#2373

기지국 세개 2s - MB

문제

N개의 도시가 일직선 상의 정수 좌표에 위치해 있다. HC 텔레콤은 이번에 모든 도시에 자신들의 기지국을 세워서 모든 도시가 통신이 가능하도록 하고자 한다. 기지국은 정확히 3개가 설치 되며, 각 기지국은 도시와 같이 일직선 상에 위치해야 한다(반드시정수 좌표에 설치하지 않아도 된다).

모든 기지국은 통신 가능 범위를 뜻하는 수치인 d를 가지고 있는데, 한 기지국을 x위치에 설치 했을 경우 해당 기지국은 [x-d,x+d] 안에 있는 도시들에게 통신 서비스를 제공할 수 있다(x-d,x+d 위치에 있는 도시 포함)..

도시들의 좌표가 주어졌을 때 세개의 기지국을 설치 했을 때 모든 도시들이 통신이 가능해지는 최소의 d값을 출력하는 프로그램을 작성하라.


입력

입력의 첫 줄에는 마을의 수 N(1≤n≤2*105)이 입력된다.

그 다음 줄에는 1이상 10<9이하의 N개의 정수가 입력되는데, 이는 각 도시의 좌표를 뜻한다. 동일한 위치에 마을이 여러개 있을 수 있다.


출력

세개의 기지국을 설치 했을 때 모든 마을이 통신이 가능하게 되는 d의 최소값을 소수점 3째 자리에서 반올림한 결과를 출력한다.


예제 #1

4

1 2 3 4
0.50

예제 #2

3
10 20 30
0.00

예제 #3

5
10003 10004 10001 10002 1
0.50

로그인해야 코드를 작성할 수 있어요.