PAT 1008 数组元素循环右移问题 (20分)(Java)
题目描述
输入格式:
每个输入包含一个测试用例,第1行输入N(1≤N≤100)和M(≥0);第2行输入N个整数,之间用空格分隔。
输出格式:
在一行中输出循环右移M位以后的整数序列,之间用空格分隔,序列结尾不能有多余空格。
输入样例:
6 2
1 2 3 4 5 6
输出样例:
5 6 1 2 3 4
代码
package com.hbut.pat;
import java.util.Scanner;
public class Pat_1008 {
public static void main(String args []) {
Scanner sc = new Scanner (System.in);
int N = sc.nextInt();
int M = sc.nextInt();
M = M % N;
int [] array = new int [1010];
for(int i = 0; i < N; i++) {
array[i] = sc.nextInt();
}
for(int i = N-1; i >= 0; i--) {
array[i+M] = array[i];
}
for(int i = N,j = 0; i < N+M; i++,j++) {
array[j] = array[i];
}
for(int i = 0; i < N-1; i++) {
System.out.print(array[i] + " ");
}
System.out.println(array[N-1]);
}
}