Thị Thu Hiền 6 Nguyễn

Câu 1. Xét thuật toán tìm kiếm tuần tự sau: B1. Nhập N, các số hạng a1, a2, , an và khóa k; B2. i ⃪ 1; B3. Nếu ai = k thì thông báo chỉ số i rồi kết thúc; B4. i ⃪ i + 1; B5. Nếu i > N thì thông báo dãy A không có số hạng nào có giá trị bằng k, rồi kết thúc; B6. Quay lại bước 3 Hãy cho biết thao tác ở bước 4 trong thuật toán trên được thực hiện tối đa bao nhiêu lần?

giúp e vs ạ

 

Nguyễn Lê Phước Thịnh
19 tháng 12 2021 lúc 23:51

 

 

#include <bits/stdc++.h>
using namespace std;
const long long maxn=1e5+10;
long long a[maxn],i,n,x,l,r,m;
//chuongtrinhcon
long long tknp(long long a[],long long l,long long r,long long x)
{
    while (l<=r)
    {
        long long g=(l+r)/2;
        if (a[g]==x) return(g);
        if (x>a[g]) l=g+1;
        else r=g-1;
    }
    return(-1);
}
int main()
{
    freopen("tknp.inp","r",stdin);
    freopen("tknp.out","w",stdout);
    cin>>n>>x;
    for (i=1; i<=n; i++)
        cin>>a[i];
    cout<<tknp(a,1,n,x);
    return 0;
}

 


Các câu hỏi tương tự
Linh Bùi
Xem chi tiết
Nguyễn Tấn Cường
Xem chi tiết
Nhi Đặng
Xem chi tiết
11111
Xem chi tiết
Nguyễn Cảnh Hùng
Xem chi tiết
Dương Thị Thu Hiền
Xem chi tiết
Nhật Anh
Xem chi tiết
phopho
Xem chi tiết
Nguyễn Cảnh Hùng
Xem chi tiết