Advertisement
unknown_0711

Untitled

Nov 9th, 2022
33
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.47 KB | None | 0 0
  1. import java.util.*;
  2. import java.lang.*;
  3. import java.io.*;
  4.  
  5. public class Main
  6. {
  7. public static void main (String[] args) throws java.lang.Exception
  8. {
  9. Scanner sc = new Scanner (System.in);
  10. int n= sc.nextInt();
  11. int []a= new int[n];
  12. int []b= new int[n];
  13. for(int i=0;i<n;i++){
  14. a[i]= sc.nextInt();
  15. b[i]=a[i];
  16. }
  17. Arrays.sort(b);
  18. int []vis= new int[n];
  19. for(int i=0;i<n;i++)vis[i]=0;
  20. int ans=0;
  21. HashMap< Integer, Integer> m= new HashMap<>();
  22.  
  23. for(int i=0;i<n;i++){
  24. m.put(b[i], i);
  25. }
  26. for(int i=0;i<n;i++){
  27. if(vis[i]==0 && a[i]!=b[i]){
  28. int cur=i;
  29. int cnt=1;
  30. int y= m.get(a[i]);
  31. while(y!=cur){
  32. // System.out.println(y +" "+ cur);
  33. vis[y]=1;
  34. y=m.get(a[y]);
  35. cnt++;
  36. }
  37. ans+=cnt-1;
  38. }
  39. vis[i]=1;
  40. }
  41. System.out.print(ans);
  42. }
  43. }
  44.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement