二分法-开花

北战南征 提交于 2020-02-29 09:58:46

在这里插入图片描述
样例输入

4 4
5 1 7 3
2 3 4 1

样例输出

1 3
import java.util.Arrays;
import java.util.Scanner;

public class 开花 {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        int n=sc.nextInt();
        int m=sc.nextInt();
        long [] a=new long[100005];
        long [] b=new long[100005];
//        int [] b=new int[m];
        for (int i = 0; i <n ; i++) {
            a[i]=sc.nextInt();
        }
        for (int i = 0; i <m ; i++) {
            b[i]=sc.nextInt();
        }
        Arrays.sort(b,0,m);
        for (int i = 0; i <n ; i++) {
            int x=Arrays.binarySearch(b,0,m,a[i]);
            if (x>=0){
                System.out.print(a[i]+" ");

            }


        }
    }
}

考点:

二分法:对于javaArrays.binarySearch,时间的优化

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!