View difference between Paste ID: pVf1jKm2 and dPbDwz5k
SHOW: | | - or go back to the newest paste.
1
import java.util.Scanner;
2
3
public class Oprst {
4
5
    public static void main(String[] args) {
6
        Scanner in = new Scanner(System.in);
7-
        int n = in.nextInt();
7+
        int n = in.nextInt(), k = in.nextInt();
8-
        int k = in.nextInt();
8+
        int[] a = new int[n], b = new int[k];
9-
        int[] a = new int[n];
9+
        for (int i = 0; i < n; i++) {
10-
        int[] b = new int[k];
10+
11-
        int left;
11+
12-
        int right;
12+
        for (int i = 0; i < k; i++) {
13-
        int middle;
13+
14-
        for (int i = 0; i < a.length; i++) {
14+
            int left = 0, right = n - 1, middle;
15
            while (left <= right) {
16
                middle = (right + left) / 2;
17-
        for (int i = 0; i < b.length; i++) {
17+
                if (a[middle] <= b[i])
18
                    left = middle + 1;
19
                else
20-
        for (int j = 0; j < b.length; j++) {
20+
                    right = middle - 1;
21
            }
22
            if (right < 0)
23-
            left = 0;
23+
                right = left;
24-
            right = n - 1;
24+
            if (left >= n)
25
                left = right;
26-
                middle = (right - left) / 2;
26+
            if (Math.abs(b[i] - a[left]) < Math.abs(a[right] - b[i]))
27-
                if (a[middle] < b[j])
27+
28-
                    left = middle;
28+
29-
                if (a[middle] > b[j])
29+
30-
                    right = middle;
30+
31
        }
32-
            if (b[j] - a[left] <= a[right] - b[j])
32+
33
    }
34
35
}