# Leetcode 2141: Maximum Running Time of N Computers

In this problem, we try to figure out how long we can run `n`

computers using a list of batteries. We have to use `n`

different batteries at any moment and switching them can be done any time (as long as it is a whole minute). Each battery has a set number of minutes that it can be used for.

You have

`n`

computers. You are given the integer`n`

and a0-indexedinteger array`batteries`

where the`ith`

battery canruna computer for`batteries[i]`

minutes. You are interested in runningall`n`

computerssimultaneouslyusing the given batteries.

Initially, you can insertat most one batteryinto each computer. After that and at any integer time moment, you can remove a battery from a computer and insert another batteryany number of times. The inserted battery can be a totally new battery or a battery from another computer. You may assume that the removing and inserting processes take no time.

Note that the batteries cannot be recharged.

Returnthemaximumnumber of minutes you can run all the`n`

computers simultaneously.

We are also given a few examples:

I noticed that the way I solved it is not optimal (takes `95ms`

to run the test suite), so you might want to check other posts to find faster ways; but I will explain my approach which is pretty effective nonetheless.