Giả sử chúng ta có một số mảng, một giá trị k và một giá trị i khác. Chúng ta phải tìm phần tử ở chỉ số i sau khi xoay các phần tử có số, k số lần sang phải.
Vì vậy, nếu đầu vào là nums =[2,7,9,8,10] k =3 i =2, thì đầu ra sẽ là 10 vì sau mảng xoay thứ 3 sẽ là [9,8,10,2,7 ], vì vậy bây giờ phần tử thứ i sẽ là nums [2] =10.
Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -
- đối với r trong phạm vi từ 0 đến k, thực hiện
- xóa phần tử cuối cùng khỏi nums và chèn phần tử đã xóa đó vào nums ở vị trí 0
- trả về số [i]
Ví dụ
Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn
def solve(nums, k, i): for r in range(k): nums.insert(0, nums.pop()) return nums[i] nums = [2,7,9,8,10] k = 3 i = 2 print(solve(nums, k, i))
Đầu vào
[2,7,9,8,10] , 3, 2
Đầu ra
10