Sha256: 031aeb35834683adc39ae485cbdc6e0a19b9f2cf208a78c2f034056f2e275653

Contents?: true

Size: 390 Bytes

Versions: 396

Compression:

Stored size: 390 Bytes

Contents

return function(amount, values)
  local index, sorted_values, result = {}, {}, {}

  for i, v in ipairs(values) do
    index[v] = i
    sorted_values[i] = v
  end

  table.sort(sorted_values, function(a, b) return b < a end)

  for i, value in ipairs(sorted_values) do
    result[index[value]] = amount // value
    amount = amount % value
  end

  return amount == 0 and result or nil
end

Version data entries

396 entries across 396 versions & 1 rubygems

Version Path
trackler-2.2.1.139 tracks/lua/exercises/change/example.lua
trackler-2.2.1.138 tracks/lua/exercises/change/example.lua
trackler-2.2.1.137 tracks/lua/exercises/change/example.lua
trackler-2.2.1.136 tracks/lua/exercises/change/example.lua
trackler-2.2.1.135 tracks/lua/exercises/change/example.lua
trackler-2.2.1.134 tracks/lua/exercises/change/example.lua
trackler-2.2.1.133 tracks/lua/exercises/change/example.lua
trackler-2.2.1.132 tracks/lua/exercises/change/example.lua
trackler-2.2.1.131 tracks/lua/exercises/change/example.lua
trackler-2.2.1.130 tracks/lua/exercises/change/example.lua
trackler-2.2.1.129 tracks/lua/exercises/change/example.lua
trackler-2.2.1.128 tracks/lua/exercises/change/example.lua
trackler-2.2.1.127 tracks/lua/exercises/change/example.lua
trackler-2.2.1.126 tracks/lua/exercises/change/example.lua
trackler-2.2.1.125 tracks/lua/exercises/change/example.lua
trackler-2.2.1.124 tracks/lua/exercises/change/example.lua
trackler-2.2.1.123 tracks/lua/exercises/change/example.lua
trackler-2.2.1.122 tracks/lua/exercises/change/example.lua
trackler-2.2.1.121 tracks/lua/exercises/change/example.lua
trackler-2.2.1.120 tracks/lua/exercises/change/example.lua