Skip to main content
3 of 5
added 463 characters in body
Dennis
  • 210.6k
  • 41
  • 370
  • 825

Jelly, 8 bytes

;E¡0ỤḢṬ+

Try it online! or verify all test cases.

How it works

;E¡0ỤḢṬ+  Main link. Argument: A

 E¡       Do e times, where e is 1 if all elements of A are equal and 0 otherwise.
;  0          Append 0 to the array.
    Ụ     Grade up; yield the indices of the resulting array, sorted by their
          corresponding values in that array.
     Ḣ    Head; extract the first index, which is the index of the first occurrence
          of the minimum. For an array of equal elements, this will be the index
          of the appended 0.
      Ṭ   Untruth; for index i, yield an array of i-1 zeroes, followed by a 1.
       +  Add this array to A, incrementing the minimum.
Dennis
  • 210.6k
  • 41
  • 370
  • 825