comefrom: <doocs>1089.Duplicate Zeros_1.py
code: def duplicateZeros( arr: List[int]) -> None:
      n = len(arr)
      i, k = -1, 0
      while k < n:
          i += 1
          k += 1 if arr[i] else 2
      j = n - 1
      if k == n + 1:
          arr[j] = 0
          i, j = i - 1, j - 1
      while ~j:
          if arr[i] == 0:
              arr[j] = arr[j - 1] = arr[i]
              j -= 1
          else:
              arr[j] = arr[i]
          i, j = i - 1, j - 1
masked: def sample_funcname ( var_0 : List [ int ] ) -> None :
      var_1 = len ( var_0 )
      var_2 , var_3 = - 1 , 0
      while var_3 < var_1 :
          var_2 += 1
          var_3 += 1 if var_0 [ var_2 ] else 2
      var_4 = var_1 - 1
      if var_3 == var_1 + 1 :
          var_0 [ var_4 ] = 0
          var_2 , var_4 = var_2 - 1 , var_4 - 1
      while ~ var_4 :
          if var_0 [ var_2 ] == 0 :
              var_0 [ var_4 ] = var_0 [ var_4 - 1 ] = var_0 [ var_2 ]
              var_4 -= 1
          else :
              var_0 [ var_4 ] = var_0 [ var_2 ]
          var_2 , var_4 = var_2 - 1 , var_4 - 1
  