O'sish tartibida saralangan aniq butun sonlardan iborat nums massivi va target soni berilgan. Agar massivda target mavjud bo'lsa, uning indeksini qaytaring. Agar mavjud bo'lmasa, u tartibni saqlagan holda joylashtirilganda qanday indeksga ega bo'lishini qaytaring.
Siz O(log n) vaqt murakkabligida ishlaydigan algoritm yozishingiz kerak.
func solve(nums []int, target int) int {
// ...
}
Input: nums = [1,3,5,6], target = 5
Output: 2
Input: nums = [1,3,5,6], target = 2
Output: 1
Input: nums = [1,3,5,6], target = 7
Output: 4
O(log n) talab qilingani uchun binary search (ikkilik qidiruv) dan foydalaning.lo va hi chegaralari bilan binary search yurgizing: o'rtadagi element target dan kichik bo'lsa lo ni o'rtadan keyingiga, aks holda hi ni o'rtaga tenglashtiring — tsikl tugagach lo aynan kerakli indeks (mavjud bo'lsa target o'zi, bo'lmasa qo'yiladigan joyi) bo'ladi.