Binary Search
发布时间:2020-12-14 04:33:06 所属栏目:大数据 来源:网络整理
导读:Search II You are given a sequence of? n ?integers S and a sequence of different? q ?integers T. Write a program which outputs C,the number of integers in T which are also in the set S. Input In the first line? n ?is given. In the second l
Search IIYou are given a sequence of?n?integers S and a sequence of different?q?integers T. Write a program which outputs C,the number of integers in T which are also in the set S. InputIn the first line?n?is given. In the second line,?n?integers are given. In the third line?q?is given. Then,in the fourth line,?q?integers are given. OutputPrint C in a line. Constraints
Sample Input 15 1 2 3 4 5 3 3 4 1 Sample Output 13 Sample Input 23 1 2 3 1 5 Sample Output 20 Sample Input 35 1 1 2 2 3 2 1 2 Sample Output 32 #include <iostream> using namespace std; int a[100010],b[50010]; int n,q; int binarySearch(int c) { int mid; int left = 0,right = n - 1; while(left <= right) { mid = left + (right - left) / 2; if(a[mid] == c) { return 1; } else if(c < a[mid]) { right = mid - 1; } else { left = mid + 1; } } return 0; } int main() { int sum = 0; cin >> n; for(int i = 0; i < n; ++ i) cin >> a[i]; cin >> q; for(int i = 0; i < q; ++ i) { cin >> b[i]; if(binarySearch(b[i])) sum ++; } cout << sum << endl; return 0; } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |