Your question is Reverse a Subarray. Start with the requirements on the right.
Run and submit as often as you like. When you're ready, talk me through your approach or go straight to the code.
Yahoo News prepares a sequence of feed item IDs for display. To support a presentation mode, reverse the sequence in contiguous groups of k items. If the final group contains fewer than k items, reverse that group as well.
Modify the input list in place and return the same list.
Implement reverse_in_groups(nums, k), where nums is a list of integers representing feed item IDs and k is a positive group size. Reverse the elements within each consecutive group of at most k elements. The relative order of different groups must not change.
Example 1
Input: nums = [1, 2, 3, 4, 5, 6, 7], k = 3
Output: [3, 2, 1, 6, 5, 4, 7]
The first two complete groups are reversed, and the final one-element group remains unchanged.
Example 2
Input: nums = [10, 20, 30, 40, 50], k = 2
Output: [20, 10, 40, 30, 50]
Each pair is reversed, followed by the final one-element group.
def reverse_in_groups(nums, k):