• 문제 링크
2428번: 표절
첫째 줄에 제출한 솔루션의 개수 N이 주어진다. 둘째 줄에는 각 솔루션 파일의 크기 size(F1), size(F2), ..., size(FN)이 주어진다. (1 ≤ N ≤ 100,000, 1 ≤ size(Fi) ≤ 100,000,000) 솔루션 파일의 크기는 정수이
www.acmicpc.net
• 풀이 과정
• 풀이 코드
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.Arrays;
import java.util.StringTokenizer;
public class Main {
static int[] arr;
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
int n = Integer.parseInt(br.readLine());
arr = new int[n];
StringTokenizer st = new StringTokenizer(br.readLine());
while (n-- > 0)
arr[n] = Integer.parseInt(st.nextToken());
Arrays.sort(arr);
long sum = 0;
for (int i = 1; i < arr.length; i++)
sum += binarySearch(arr[i] * 0.9, i);
bw.write(String.valueOf(sum));
bw.flush();
}
private static long binarySearch(double size, int i) {
int left = 0, right = i - 1;
while (left <= right) {
int mid = (left + right) / 2;
if (arr[mid] < size) left = mid + 1;
else right = mid - 1;
}
return i - left;
}
}
'Problem Solving > Baekjoon' 카테고리의 다른 글
[백준] 17245 서버실 - BinarySearch / Java (0) | 2023.06.20 |
---|---|
[백준] 11561 징검다리 - BinarySearch / Java (0) | 2023.06.19 |
[백준] 15810 풍선 공장 - BinarySearch / Java (0) | 2023.06.17 |
[백준] 1166 선물 - BinarySearch / Java (0) | 2023.06.16 |
[백준] 6236 용돈 관리 - BinarySearch / Java (0) | 2023.06.15 |
댓글