/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
* 旋转数组
* @param n int整型 数组长度
* @param m int整型 右移距离
* @param a int整型一维数组 给定数组
* @param aLen int a数组长度
* @return int整型一维数组
* @return int* returnSize 返回数组行数
*/
void reverse(int*a, int left, int right) {
while(left < right) {
int temp = a[left];
a[left] = a[right];
a[right] = temp;
left++;
right--;
}
}
int* solve(int n, int m, int* a, int aLen, int* returnSize ) {
// write code here
int newm = m % n;
reverse(a, 0, aLen - 1);
reverse(a, 0, newm - 1);
reverse(a, newm, aLen - 1);
*returnSize = aLen;
return a;
}