牛客網 查詢(二分查詢、北郵機試)
題目描述
輸入陣列長度 n 輸入陣列 a[1…n] 輸入查詢個數m 輸入查詢數字b[1…m] 輸出 YES or NO 查詢有則YES 否則NO 。
輸入描述:
輸入有多組資料。
每組輸入n,然後輸入n個整數,再輸入m,然後再輸入m個整數(1<=m,n<=100)。
輸出描述
如果在n個陣列中輸出YES否則輸出NO。
示例1
輸入
5
1 5 2 4 3
3
2 5 6
輸出
YES
YES
NO
Solution
二分查詢板題。
#include <iostream>
#include <cstdio>
#include <algorithm>
using namespace std;
const int maxn = 1111;
int num[maxn];
int low_bound(int first, int last, int value)
{
while (first < last)
{
int mid = first + (last - first) / 2; // 防溢位
if (value > num[mid])
first = mid + 1;
else
last = mid;
}
return first;
}
int main()
{
// freopen("in.txt", "r", stdin);
int n, m;
while (~scanf("%d", &n))
{
for (int i = 0; i < n; i++)
scanf("%d", &num[i]);
sort(num, num + n);
scanf("%d", &m);
for (int i = 0; i < m; i++)
{
int value;
scanf("%d", &value);
int index = low_bound(0, n, value);
if (value == num[index])
puts("YES");
else
puts("NO");
}
}
return 0;
}
相關文章
- 牛客網 找最小數(sort結構體查詢、北郵機試)結構體
- 查詢——二分查詢
- 查詢演算法__二分查詢演算法
- 牛客網 比較奇偶個數(水、北郵機試)
- 二分查詢(一)——純粹的二分查詢
- 查詢演算法之二分查詢演算法
- 二分查詢
- 二分查詢法
- PHP二分查詢PHP
- leetcode——二分查詢LeetCode
- leetcode -- 二分查詢LeetCode
- 二分查詢【折半查詢】演算法 PHP 版演算法PHP
- 二分查詢 | 二分查詢的一種推薦寫法
- 陣列的查詢(搜尋):線性查詢和二分法查詢陣列
- HTML + CSS + JS 利用郵編查詢 API 實現郵編查詢工具HTMLCSSJSAPI
- 704.二分查詢
- labuladong_二分查詢
- 詳解二分查詢
- python二分查詢模板Python
- 二分查詢(c++)C++
- 每日leetcode——二分查詢LeetCode
- Leetcode 704 二分查詢LeetCode
- 牛客網 二進位制數(進位制轉換、北郵機試)
- 如何找東西?查詢演算法之順序查詢和二分查詢詳解演算法
- 【演算法】二分查詢演算法
- 演算法->二分查詢演算法
- 力扣之二分查詢力扣
- 二分查詢的定義
- 二分查詢-不套用模板
- 二分搜尋(折半查詢)
- PHP 實現二分查詢PHP
- 圖解--二分查詢樹圖解
- 二分查詢成長錄
- 牛客網 複數集合(小根堆的優先佇列、北郵機試)佇列
- 二維陣列中的查詢——牛客劍指offer陣列
- 大資料量查詢容易OOM?試試MySQL流式查詢大資料OOMMySql
- 第二章 :查詢與排序-------二分查詢的遞迴解法排序遞迴
- SQL查詢的:子查詢和多表查詢SQL