public static void RotateArray(int[] nums, int k)
int length = nums.Length;
for (i = 0; i < length / 2; i++)
(nums[i], nums[length - 1 - i]) = (nums[length - 1 - i], nums[i]);
for (i = 0; i < length / 2; i++)
(nums[i], nums[length - 1 - i]) = (nums[length - 1 - i], nums[i]);
length = nums.Length - k;
for (i = 0; i < length / 2; i++)
(nums[k + i], nums[k + length - 1 - i]) = (nums[k + length - 1 - i], nums[k + i]);
public static void Main()
int[] array = [..Enumerable.Range(1, 7)];
Console.WriteLine(string.Join(' ', array));
Console.WriteLine(string.Join(' ', array));