public class Solution { public static void main(String[] args) { Scanner input = new Scanner (System.in); int n = input.nextInt (); int k = input.nextInt (); int[] a = new int[n]; int[] index = new...


Can you explain this code? It is "Largest Permutation" Hackerrank question's solution.


public class Solution {<br>public static void main(String[] args) {<br>Scanner input = new Scanner (System.in);<br>int n = input.nextInt ();<br>int k = input.nextInt ();<br>int[] a = new int[n];<br>int[] index = new int [n + 1];<br>for (int i = 0; i < n; i++) {<br>a[i] = input.nextInt ();<br>index [a[i]] = i;<br>%3D<br>for (int i = 0; i <n && k > 0; i++) {<br>if (a[i] == n - i) {<br>continue;<br>a[index [n - i]] = a[i];<br>index [a[i]] = index[n - i];<br>a[i] = n - i;<br>index [n - i] = i;<br>%3D<br>k--;<br>for (int i =<br>0; i < n; i++) {<br>System.out.print(a[i] +

Extracted text: public class Solution { public static void main(String[] args) { Scanner input = new Scanner (System.in); int n = input.nextInt (); int k = input.nextInt (); int[] a = new int[n]; int[] index = new int [n + 1]; for (int i = 0; i < n;="" i++)="" {="" a[i]="input.nextInt" ();="" index="" [a[i]]="i;" %3d="" for="" (int="" i="0;" i=""> 0; i++) { if (a[i] == n - i) { continue; a[index [n - i]] = a[i]; index [a[i]] = index[n - i]; a[i] = n - i; index [n - i] = i; %3D k--; for (int i = 0; i < n;="" i++)="" {="" system.out.print(a[i]="" +="" "="" ");="">

Jun 11, 2022
SOLUTION.PDF

Get Answer To This Question

Related Questions & Answers

More Questions »

Submit New Assignment

Copy and Paste Your Assignment Here