io有问题吗
查看原帖
io有问题吗
1209774
demo_nefertari楼主2024/3/31 23:11

java21最后一个测试没过

import java.io.PrintWriter;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
class Main{
public static void main(String[] args) {
        try (BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
             PrintWriter out = new PrintWriter(System.out)){
            String[] tokens = reader.readLine().split(" ");
            int n = Integer.parseInt(tokens[0]);
            int m = Integer.parseInt(tokens[1]);
            int[] num = new int[n];
            tokens = reader.readLine().split(" ");
            for (int i = 0; i < num.length; i++) {
                num[i] = Integer.parseInt(tokens[i]);
            }
            tokens = reader.readLine().split(" ");
            for (int i = 0; i < m; i++) {
                int search = Integer.parseInt(tokens[i]);
                out.print(binarySerach(num,search) + " ");
            }
        } catch (IOException e) {
            throw new RuntimeException(e);
        }

    }
    static int binarySerach(int[] num,int target) {
        int left = 0,right = num.length - 1;
        while (left < right) {
            int mid = (left + right) >> 1;
            if (num[mid] >= target) {
                right = mid;
            }else {
                left = mid + 1;
            }
        }
        if (num[left] == target) {
            return left + 1;
        }

        else
            return -1;
    }
}
2024/3/31 23:11
加载中...