https://www.acmicpc.net/problem/18310
18310번: 안테나
첫째 줄에 집의 수 N이 자연수로 주어진다. (1≤N≤200,000) 둘째 줄에 N채의 집에 위치가 공백을 기준으로 구분되어 1이상 100,000이하의 자연수로 주어진다.
www.acmicpc.net
해석 및 팁
이 문제의 핵심은 중앙값을 찾는 것입니다. 문제자체는 어렵지 않지만 답을 생각하기가 쉽지 않습니다. 주어진수가 짝수인지 홀수인지 판별 후 중앙값을 출력해 주면 됩니다.
Java 코드
import java.util.Scanner;
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
StringBuilder sb = new StringBuilder();
int n = sc.nextInt();
long[] arr = new long[n + 1];
for(int i = 1; i <= n; i++) arr[i] = sc.nextInt();
Arrays.sort(arr);
if(n % 2 == 0) sb.append(arr[n/2]);
else sb.append(arr[n / 2 + 1]);
System.out.println(sb);
}
}
'백준' 카테고리의 다른 글
백준 2012 등수 매기기(Java) (0) | 2023.02.05 |
---|---|
백준 7795 먹을 것인가 먹힐 것인가(Java) (0) | 2023.02.04 |
백준 11441 합 구하기(Java) (0) | 2023.02.04 |
백준 2089 -2진수(Java) (0) | 2023.02.04 |
백준 4375 1(Java) (0) | 2023.02.04 |