Tháng 10 6, 2022

Bài 4: Sắp xếp quay vòng

Share this

Đăng bởi Admin

Tháng 10 6, 2022

https://chuyenhalong.ucode.vn/problems/sap-xep-quay-vong-118723

Tìm một phần tử x trong dãy đã đượcc sắp xếp và quay vòng.
Một dãy được sắp xếp và quay vòng có dạng: nửa dãy đầu có giá trị tăng dần, rồi dãy tiếp theo cũng tăng dần. Dãy này có được từ dãy tăng dần dịch trái k vị trí.
Ví dụ: A= \{ 3,4,5,1,2 \}  ; \{ 4,5,1,2,3 \} là một dãy quay vòng đã được sắp xếp. Cần tìm một phần tử có giá trị x trong dãy với độ phức tạp O(logn) bằng áp dụng thuật toán tìm kiếm nhị phân.

Đầu vào
– Dòng đầu ghi số nguyên dương \mathrm{N}\left(1 \leq \mathrm{N} \leq 10^7\right) là số phần tử của mảng.
– Dòng thứ hai ghi \mathrm{N} số nguyên a_i\left(1 \leq a_i \leq 10^9\right) của mảng theo thứ tự tăng dần (mảng tăng nghiêm ngặt)
– Dòng thư hai ghi số nguyên \mathrm{T}(1 \leq T \leq 2000) là số lượng truy vấn
– T dòng tiếp theo mỗi dòng ghi một số nguyên x\left(1 \leq x \leq 10^9\right)

Đầu ra
– Ghi ra vị trí tìm được của số nguyên x tìm được, trong trường hợp số nguyên x không xuất hiện trong dãy thì in ra – 1 .

Ví dụ

Sample inputSample output
9
5 6 7 8 9 10 1 2 3
4
6
8
2
30
2
4
8
-1
Chia sẻ:
{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}

Tài liệu tương tự

Tháng 10 8, 2022

Bài 10: Đê chắn sóng

Tháng 10 8, 2022

Bài 9: Tiểu thuyết

Tháng 10 8, 2022

Bài 8: Tập xe

Tháng 10 7, 2022

Bài 7: Bộ số tam giác
>