diff options
author | Jack Sangdahl <[email protected]> | 2024-09-02 17:05:35 -0600 |
---|---|---|
committer | Jack Sangdahl <[email protected]> | 2024-09-02 17:05:35 -0600 |
commit | f24c80dde79ceb46dda91c612a91f0758e94b5b7 (patch) | |
tree | 7d82f355a9dc7e5b12d93fa93899e6acf83315ba /incremental_memory_leak.py | |
parent | 1f03596095e457960c2757a054cb3808af4f44db (diff) | |
download | leetcode-f24c80dde79ceb46dda91c612a91f0758e94b5b7.tar.gz leetcode-f24c80dde79ceb46dda91c612a91f0758e94b5b7.zip |
1860. incremental memory leak
Diffstat (limited to 'incremental_memory_leak.py')
-rw-r--r-- | incremental_memory_leak.py | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/incremental_memory_leak.py b/incremental_memory_leak.py new file mode 100644 index 0000000..f8e23a6 --- /dev/null +++ b/incremental_memory_leak.py @@ -0,0 +1,37 @@ +# 1860. Incremental Memory Leak + +""" +you are given two integer 'memory1' and 'memory2' representing the available +memory in bits on two memory sticks. there is currently a faulty program +running that consumes an increasing amount of memory every second. at the +i'th second (starting from 1), 'i' bits of memory are allocated to the stick +with more available memory (or from the first memory stick if both have the +same available memory). if neither stick has at least 'i' bits of available +memory, the program crashes. return an array containing '[crash_time, +memory1_crash, memory2_crash]', where 'crash_time' is the time when the +program crashed and 'memory1_crash' and 'memory2_crash' are the available +bits of memory in the first and second sticks respectively +""" + + +class Solution(object): + def memLeak(self, memory1, memory2): + """ + :type memory1: int + :type memory2: int + :rtype: List[int] + """ + i = 1 + while max(memory1, memory2) >= i: + if memory1 >= memory2: + memory1 -= i + else: + memory2 -= i + i += 1 + return [i, memory1, memory2] + + +if __name__ == "__main__": + obj = Solution() + print(obj.memLeak(2, 2)) + print(obj.memLeak(8, 11)) |