Facebook
From Beefy Leech, 4 Years ago, written in Python.
This paste is a reply to Re: Re: Re: Untitled from Trivial Anoa - view diff
Embed
Download Paste or View Raw
Hits: 230
  1. def minimumOperations(numbers):
  2.         n = len(numbers)
  3.  
  4.         arrpos = [*enumerate(numbers)]
  5.  
  6.         arrpos.sort(key = lambda it:it[1])
  7.  
  8.         vis = {k:False for k in range(n)}
  9.  
  10.         ans = 0
  11.         for i in range(n):
  12.                 if vis[i] or arrpos[i][0] == i:
  13.                         continue
  14.                 cycle_size = 0
  15.                 j = i
  16.                 while not vis[j]:
  17.                         vis[j] = True
  18.                         j = arrpos[j][0]
  19.                         cycle_size += 1
  20.                 if cycle_size > 0:
  21.                         ans += (cycle_size - 1)
  22.         return ans
  23.  
  24.  
  25. arr = [1, 5, 4, 3, 2]
  26. print(minSwaps(arr))
  27.  

Replies to Re: Re: Re: Re: Untitled rss

Title Name Language When
Re: Re: Re: Re: Re: Untitled Sweltering Tapir python 4 Years ago.