A left rotation operation on an array of size n shifts each of the arrays elemen
ID: 3841509 • Letter: A
Question
A left rotation operation on an array of size n shifts each of the arrays elements 1 unit to the left. For example, if 2 left rotations are performed on array [1, 2, 3, 4, 5], then the array would become [3, 4, 5, 1, 2]. Given an array of n integers and a number, d, perform d left rotations on the array. Then print the updated array as a single line of space-separated integers. Input Format The first line contains two space-separated integers denoting the respective values of n (the number of left rotations you must perform). The second line contains n space-separated integers describing the respective elements of the array's initial state. Output Format Print a single line of n space-separated integers denoting the final state of the array after performing d left rotations. Sample Input 5 4 1 2 3 4 5 Sample output 5 1 2 3 4 Explanation When we perform d = 4 left rotations, the array undergoes the following sequence of changes: [1, 2, 3, 4, 5] rightarrow [2, 3, 4, 5, 1] rightarrow [3, 4, 5, 1, 2] rightarrow [4, 5, 1, 2, 3] rightarrow [5, 1, 2, 3, 4] Thus, we print the array's final state as a single line of space-separated values, which is 5 1 2 3 4.Explanation / Answer
Program
import java.util.Scanner; // Header
public class LeftRotation { // LeftRotation is the class name
public static void main(String[] args) {
Scanner sc = new Scanner(System.in); // Scanner breaks input into tokens.
int n = sc.nextInt(); // nextInt() function scans the next token as an int value.
int d = sc.nextInt();
int[] array = new int[n];
// Read elements in array from the input stream, it assign an array at particular index after shifting "d" left rotations and equal (n-r) right rotations.
for(int i=0; i<n;i++) {
array[(i+n-d)%n] = sc.nextInt(); // index (i+n-d)%num gets from nextInt() function
}
for(int i=0; i<n;i++) {
System.out.print(array[i] + " ");
}
}
}
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.