K
Khách
Hãy nhập câu hỏi của bạn vào đây, nếu là tài khoản VIP, bạn sẽ được ưu tiên trả lời.
Các câu hỏi dưới đây có thể giống với câu hỏi trên
13 tháng 12 2023
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int main()
{
ll a[]={10,2,5,12,20,6,8,15,18}; //mảng đã cho
ll n=sizeof(a)/sizeof(a[0]); //độ dài mảng
sort(a,a+n); //sắp xếp mảng
//Thuật toán tìm kiếm nhị phân
ll l=0, r=n-1;
while(l<=r) {
ll mid=(l+r)/2; //Tìm phần tử giữa left và right
if(a[mid]<15) l=mid+1; //Vì từ đoạn [0,mid] thì phần tử nhỏ hơn 15 nên ta duyệt từ khoảng (mid,r]
else r=mid-1; //vì thấy nên rút r để thu hẹp phạm vi
}
cout << l+1; //in ra kq (vì bắt đầu từ 0 đến n-1 nên phải tăng thêm để ra vị trí đúng)
}
(Bạn có thể dựa vào code mình để rút ra các bước)
Chúc bạn học tốt!
Sắp xếp: Ấn Độ, Campuchia, Lào, Malaysia, Myanmar, Nga, Nhật Bản, Singapore, Thái Lan, Trung Quốc, Việt Nam
Xét vị trí đầu tiên: Ấn Độ
Lần lặp 1: "Ấn Độ" \(\ne\) "Việt Nam" nên chuyển sang lần lặp 2.
Lần lặp 2: Xét vị trí tiếp theo: Campuchia
"Campuchia" \(\ne\) "Việt Nam" nên chuyển sang lần lặp 3.
Lần lặp 3: Xét vị trí tiếp theo: Lào
"Lào" \(\ne\) "Việt Nam" nên chuyển sang lần lặp 4.
Lần lặp 4: Xét vị trí tiếp theo: Malaysia
"Malaysia" \(\ne\) "Việt Nam" nên chuyển sang lần lặp 5.
Lần lặp 5: Xét vị trí tiếp theo: Myanmar
"Myanmar" \(\ne\) "Việt Nam" nên chuyển sang lần lặp 6.
Lần lặp 6: Xét vị trí tiếp theo: Nga
"Nga" \(\ne\) "Việt Nam" nên chuyển sang lần lặp 7.
Lần lặp 7: Xét vị trí tiếp theo: Nhật Bản
"Nhật Bản" \(\ne\) "Việt Nam" nên chuyển sang lần lặp 8.
Lần lặp 8: Xét vị trí tiếp theo: Singapore
"Singapore" \(\ne\) "Việt Nam" nên chuyển sang lần lặp 9.
Lần lặp 9: Xét vị trí tiếp theo: Thái Lan
"Thái Lan" \(\ne\) "Việt Nam" nên chuyển sang lần lặp 10.
Lần lặp 10: Xét vị trí tiếp theo: Trung Quốc
"Trung Quốc" \(\ne\) "Việt Nam" nên chuyển sang lần lặp 11.
Lần lặp 11: Xét vị trí tiếp theo: Việt Nam
"Việt Nam" = "Việt Nam" nên thông báo tìm thấy Việt Nam ở lần lặp thứ 11 và kết thúc thuật toán